【发布时间】:2011-10-17 03:36:24
【问题描述】:
我目前有一个 java 文件,其中包含用于创建新 GUI 窗口的按钮。当用户单击特定按钮时,我希望在同一个项目中打开第二个 java 文件。第二个文件添加了所有组件,只需要在我的“主要 java 文件”(文件一)中启动。我怎样才能做到这一点? (调用和调用并实例化第二个java文件而不是方法)。
欢迎提出任何意见或建议。
谢谢!
【问题讨论】:
标签: java eclipse swing user-interface
我目前有一个 java 文件,其中包含用于创建新 GUI 窗口的按钮。当用户单击特定按钮时,我希望在同一个项目中打开第二个 java 文件。第二个文件添加了所有组件,只需要在我的“主要 java 文件”(文件一)中启动。我怎样才能做到这一点? (调用和调用并实例化第二个java文件而不是方法)。
欢迎提出任何意见或建议。
谢谢!
【问题讨论】:
标签: java eclipse swing user-interface
由于此帖子尚未标记为已解决,我想您还没有找到问题的解决方案。 这里只有两件事可能是错的。要么你的第二堂课错了,要么你的听众错了。您只需添加 setVisible(true) 并创建第二类的新对象,以确保显示“第二帧”,如之前的帖子所述。
这是你的第二个班级需要创建一个空窗口:
public class MySecondClass extend JFrame{
public MySecondClass(){
setSize(200, 200);
setVisible(true);
//additional calls
}
}
你的监听器应该在你的主类的构造函数中如下所示:
theButton.addActionListener(new buttonListener());
最后,在主类中添加以下内容作为内部类:
public class buttonListener implements ActionListener{
public void actionPerformed(ActionEvent e){
new MySecondClass();
}
}
如果您仍然无法让您的代码工作,请在您的第二个类的构造函数中添加一个打印行,并在您的侦听器类中添加一个打印行,以便您找出哪个部分有问题
【讨论】:
嗯,我不知道我理解是否正确,但是您想在单击按钮时创建窗口?
试试这个:
new GUIConstructorNameHere.setVisible(true);
PS:GUIConstructorName 是你要展示的类的构造方法。
【讨论】:
您应该为此创建一个方法,假设您有两个文件,例如。文件 1 和文件 2 您必须通过单击 file1 中的按钮从 file1 导航到 file2。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
{
file2 f2 = new file2();
this.dispose(); //closes current file
f1.seVisible(true); //opens the next file
}
【讨论】:
您没有提供足够的信息。 Java 有不止一个 GUI 库,Swing 和 SWT 是立即浮现在脑海中的那些。如果您正在使用 Swing 并且您想要显示的“第二类文件”扩展了 JPanel,那么您可以创建一个新的 YourSecondClass() 并将其添加到您的 JFrame。在 Swing 中,所有组件都必须添加到容器中,因此您的第二类必须是容器(例如 JPanel),或者您的第二类中的组件可以添加到现有容器中。
【讨论】: