2012-03-18 68 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