您好,感谢您查看我的问题。 在Eclipse中开发swing应用程序时遇到以下问题: 当我尝试启动一个简单的swing JFrame应用程序时(例如由gui构建器生成,如窗口构建器或编程手册中的小例子),程序将运行时没有任何错误,但JFrame将不会显示。当然,这些示例使JFrame最后以
显示 Framename.setVisible(true)
。
我认为问题出在Eclipse的某处,因为当我在Eclipse中生成这个应用程序的可运行jar并在Eclipse之外运行它时,JFrame将按预期显示。我测试的所有示例都会出现此问题。你有一个提示,如何解决这个问题? 提前致谢 理查德。
-
编辑:我自己解决了我的问题,但我不明白为什么会这样: 当它们位于引用了SWT / JFace库的项目中时,似乎swing应用程序不起作用(1)。只要我删除这些引用,或者将类移到另一个项目,该类就会恢复工作。这种行为有什么好的理由吗?
答案 0 :(得分:1)
如果您延长MyClassName extends JFrame
,则需要使用setVisible(true)
当应用程序准备好开始时,您也可以使用它,这种行为更容易被接受:
EventQueue.invokeLater(new Runnable(){
public void run(){
new MyClassName().setVisible(true);
}
});