2012-03-18 12 views
0

이전에 netbeans 6.9.1에서이 코드를 사용했지만 7.1.1에서는 작동하지 않는 것으로 보아 .getApplication()에 "symbol not find"이라는 힌트가 있습니다.Netbeans template 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); 
    } 
} 

앱 조회 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 중 하나를했을 때 그것을 가지고 있지 않았다,하지만 여전히, 나는 그것이 기본 자바 메서드라고 생각하지만,이 단계에서 그것은 더 netbeans 클래스처럼 lokks. – thewikus