2012-03-18 66 views
0

我以前在netbeans 6.9.1中使用过这个代码,但它似乎并没有在7.1.1中工作,它强调.getApplication()的提示“无法找到符号”。Netbeans模板AboutBox Java

我该如何再次完成这项工作?

JFrame mainFrame = TestProject.getApplication().getMainFrame(); 
AboutBox newAboutBox = new AboutBox(); 
newAboutBox.setLocationRelativeTo(mainFrame); 
TestProject.getApplication().show(newAboutBox); 

Here是一个类似的问题,但解决方案不起作用。

回答

0

我通过重新安装netbeans 6.9.1找到了解决方案。看起来有一个内置库不在7.1.1中。我还发现我使用的模板是“桌面应用程序”模板。

这是我想出了解决方案来自:

TestProject类:

import org.jdesktop.application.Application; 
import org.jdesktop.application.SingleFrameApplication; 

public class TestProject extends SingleFrameApplication { 

    @Override protected void startup() { 
     show(new AppView(this)); 
    } 

    @Override protected void configureWindow(java.awt.Window root) { } 

    public static TestProject getApplication() { 
     return Application.getInstance(TestProject.class); 
    } 

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

APPVIEW的JFrame:

import org.jdesktop.application.FrameView; 
import org.jdesktop.application.SingleFrameApplication; 

public class AppView extends FrameView { 
    public AppView(SingleFrameApplication app) { 
     super(app); 

     JFrame mainFrame = TestProject.getApplication().getMainFrame(); 
     AboutBox newAboutBox = new AboutBox(); 
     newAboutBox.setLocationRelativeTo(mainFrame); 
     TestProject.getApplication().show(newAboutBox); 
    } 
} 
0

你是否检查过TestProject.java中的静态方法getApplication()?它显示了什么?

+0

这并不表明方法,在TestProject类但是当我拥有netbeans 6.9.1时它却没有它,但它仍然有效,我认为它是一种基本的java方法,但是在这个阶段它更像是一个netbeans类。 – thewikus 2012-03-22 10:22:02