我正在使用Java,我正在尝试使用NetBeans创建GUI。我以前做过这个,我很困惑,因为我的代码虽然NetBeans没有给出错误,但是当我在NetBeans中运行它时,不会产生新的JFrame窗口。但是,初始化JFrame的代码与我之前的GUI拥有程序(“程序一”)基本相同。当我尝试运行“程序一”时,它运行得很好。这是我的问题代码;
package aircannoncalculator;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class CalcGUI extends JFrame {
public CalcGUI(){
setTitle("Air Cannon Modeler");
setSize(400,400);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args){
CalcGUI gui = new CalcGUI();
gui.setVisible(true);
}
}
根据NetBeans的说法,构建总是很好,但正如我所说,没有生成实际的窗口。我做错了什么?
旁注;忽略我的无偿导入列表。
答案 0 :(得分:16)
您必须将JFrame设置为项目的主要类。右键单击项目名称(咖啡杯图标) - >设置配置 - >自定义 - >在“运行”部分中点击" Main Class:"右侧的Browse按钮。选择默认的主类(您想要的JFrame),完成!
答案 1 :(得分:1)
package aircannoncalculator;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class CalcGUI extends JFrame {
public CalcGUI(){
setTitle("Air Cannon Modeler");
setSize(400,400);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args){
CalcGUI gui = new CalcGUI();
//Try adding some JComponents
this.pack(); //this tends to compact the JFrame container & displays it when you setVisible(true)
gui.setVisible(true);
}
}