我正在开发一个项目,其中有“Class1”、“Class2”和“Class3”。 Class2 和 Class3 都创建 JFrame,每个都包含各种 JButton、JLabel 和其他 swing 组件。我该怎么做在 Class1 我可以从 Class2 引用 JButton 并使用动作侦听器将 Class2 的可见性设置为 false,将 Class3 的可见性设置为 true。
我试过这个:在我的主要方法中将 Class2 设置为可见是没有问题的,但是一旦我开始实现 Class3,事情就没有用了。
总结:在从其他类启动 jbutton 并使用引用该 jbutton 的动作侦听器时遇到问题。
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
@SuppressWarnings("serial")
public class Class1 extends JFrame implements ActionListener
{
public static void main(String[] args) {
Class2 frameFromclass2 = new Class2();
frameFromclass2.setVisible(true);
}
Class2 buttonMovetoclass3 = new Class2();
public void actionPerformed(ActionEvent e) {
if (buttonMovetoclass3 == e.getSource()) {
Class2 frameFromclass2 = new Class2();
frameFromclass2.setVisible(false);
Class3 frameFromclass3 = new Class3();
frameFromclass3.setVisible(true);
}
}
}