gpt4 book ai didi

java - JButton ActionListener 一般查询

转载 作者:行者123 更新时间:2023-12-02 07:01:04 25 4
gpt4 key购买 nike

几年前,我从高中毕业,一直被教导两种将 ActionListener 添加到 JButton 的方法。一种方法是这样的:

JButton myButton = new JButton("My Button!");
myButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
//actions here
}
});

另一种方法是这样的:

JButton myButton = new JButton("My Button");
myButton.addActionListener(new myButtonAction());

然后在我的代码底部的某个地方,我会添加以下内容:

class myButtonAction implements ActionListener{
public void actionPerformed(ActionEvent e) {
//actions here
}
}

我今天的问题是,我是否可以编写另一个源文件(.java)并在其中编写我的整个方法?我希望能够从原始 class 文件执行操作,在本示例中,我们将其称为 myButtonClass。我是否可以使用 int double String 等变量和 Properties JProgressBar 等组件> 来 self 原始类的 JPanelJTextArea 并操作它们并将它们从我的 myButtonClass 发送回我的原始类?

如果是这样,您介意帮我举个例子吗?我如何将 myButtonClass 调用到 JButton

如果我的问题具有误导性或不清楚,请告诉我。

最佳答案

我想这就是你想要的:

public class MyClass {

public void myMethod() {

JButton myButton = new JButton("My Button");
myButton.addActionListener(new myButtonAction(this));
}

public void anotherMethod() {

}

}

public class myButtonAction implements ActionListener{

private MyClass mc;

public myButtonAction(MyClass mc) {
this.mc = mc;
}

@Override
public void actionPerformed(ActionEvent e) {
mc.anotherMethod();
}
}

您需要通过构造函数传递类

关于java - JButton ActionListener 一般查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16668489/

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