0

我以前在 netbeans 6.9.1 中使用过此代码,但它似乎在 7.1.1 中不起作用,它在 .getApplication() 下划线并带有提示“找不到符号”。

我怎样才能让它再次工作?

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

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

4

2 回答 2

0

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

于 2012-03-21T05:06:57.303 回答
0

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

这是我从中提出的解决方案:

测试项目类:

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);
   }
}
于 2012-03-25T22:07:26.103 回答