Netbeans GUI编辑器生​​成自己难以理解的代码

时间:2010-04-01 15:21:38

标签: java user-interface swing netbeans

在netbeans中创建一个新项目时,如果我选择JAVA Desktop应用程序,它会创建一些我根本无法识别的代码,就像我在摇摆中学到的那样。

它导入包如:

org.jdesktop.application.SingleFrameApplication;

另外,main()的声明如下:

public static void main(String[] args) {
            launch(DesktopApplication2.class, args);
        }

这对我对JFrame,JPanel等的了解毫无意义。

如果我尝试从头编写netbeans应用程序,我可以编写自己的swing应用程序,但我找不到GUI编辑器。

  • 从头开始创建Java应用程序时如何使用GUI编辑器?
  • 任何人都可以向我解释这个org.jdesktop.application.SingleFrameApplication和其他类吗?

请帮忙。这真是令人沮丧。

2 个答案:

答案 0 :(得分:24)

您可能无意中选择了Java Desktop Application

  

根据Swing Application Framework (JSR 296)创建桌面应用程序的框架。此模板提供基本的应用程序基础结构,例如菜单栏,窗口状态的持久性和状态栏。使用此模板,您还可以生成代码以创建数据库表的GUI界面。

而不是Java Application

  

在标准IDE项目中创建新的Java SE应用程序。您还可以在项目中生成主类。标准项目使用IDE生成的Ant构建脚本来构建,运行和调试项目。

附录:使用File > New File > Java GUI Forms添加高级容器,例如一个封闭的JPanel,可以从main()的{​​{1}}方法实例化。

例如,run()

Main.main()

在GUI编辑器中构建package temp; import java.awt.EventQueue; import javax.swing.JFrame; public class Main { public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.add(new NewJPanel()); f.pack(); f.setVisible(true); } }); } } (注意“生成的代码”):

NewJPanel

答案 1 :(得分:1)

您会找到有关org.jdesktop.application.SingleFrameApplication here的更多信息。但是,简要说明:这是Swing Application Framework的一部分。 Matisse(现在称为Java Swing GUI Builder)与AFAIK一起工作,严格地使用应用程序框架,而不是一般的Swing应用程序。基本上,如果你正在使用原始Swing,那么你几乎就是你自己。