gpt4 book ai didi

java - 按钮单击调用不带参数的面板方法

转载 作者:行者123 更新时间:2023-12-01 11:34:46 25 4
gpt4 key购买 nike

我有 JFrame,里面有 JPanel,里面有一个按钮。当我单击时,我希望它调用我指定的某种方法。没有参数是否可以实现?

到目前为止我就是这样做的:

JFrame frame = new JFrame("");
JPanel container = new JPanel();
frame.add(container);

JButton button = new JButton("Button");
button.addActionListener( e -> mySpecialMethod()); // I have to create action performed method with has ActionEvent as parameter.

...

有没有更简单的方法?一直这样做似乎是多余的。类似于 button.addActionListener(Foo::bar);public void bar(){....}

最佳答案

仅当您的方法具有 ActionEvent 参数时,您才可以在此处使用方法引用:

button.addActionListener( this::mySpecialMethod );

void mySpecialMethod( ActionEvent e ) { ... }

如果你的方法没有参数,那么接口(interface)签名和方法签名不匹配,所以你会遇到编译错误。可能这是一个品味问题,但对我来说 e -> mySpecialMethod() 看起来并不是很多余(特别是与我在 Java 8 之前必须使用的匿名类相比)。

关于java - 按钮单击调用不带参数的面板方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30114488/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com