2012-05-22 2 views
0

Jframe을 확장하고 내 프로그램의 GUI를 설정하는 windowFrame() 메서드가 있는데, 인스턴스는 main 메서드의 myFrame입니다. 디폴트에서는 setAlwaysOnTop (false)로 설정됩니다. 하지만 windowFrame() 메서드 내에서 true 또는 false '항상 위에'속성을 설정하는 데 사용할 JCheckBox가 있습니다. 내 질문은 이미 기존 myFrame 창 GUI를 어떻게 할 수 있습니까?Java에서 기존 JFrame 윈도우의 setAlwaysOnTop() 속성을 어떻게 변경합니까?

나는 Listener와 모든 것을 가지고 있지만 JCheckBox와 Listener가 windowFrame() 메서드 안에 있지만 인스턴스는 물론 외부의 main 메서드에서 myFrame 윈도우를 참조하는 방법을 알지 못합니다. this.setAlwaysOnTop (true) 및 setAlwaysOnTop (true)를 사용하여 시도했지만 물론 작동하지 않습니다.

추가 정보 : 모든 것이 동일한 기본 클래스에 래핑되며 그 창 인스턴스 만 필요합니다. 더러운 해킹없이 JFrame와 수

+3

귀하의 질문 ISN을하지 않는다 정말 속성을 설정하는 방법이 없습니다. 당신은 분명히 그것을하는 방법을 안다. 그것은 왜 당신의 디자인이 효과가 없는지에 관한 것입니다. 이것은 정말로 대답 할 수있는 질문이 아닙니다. 특히 게시 한 것보다 훨씬 많은 코드를 보지 않아도됩니다. –

+0

@ dansvank Ryan에 동의합니다. 코드를 추가해야합니다. 상황을 정확하게 설명하고 있는지 확인하십시오. 메소드로 클래스를 확장 할 수는 없습니다. JFrame을 확장하는 클래스가 있고 기본 메소드에서 해당 클래스를 인스턴스화한다고 상상해보십시오. 또한, "청취자"를 말하면, 청취자의 유형이 명확하지 않습니다. 스윙 위젯 세트에는 여러 개의 다른 리스너가 정의되어 있습니다. Ryan이 말했듯이 이것은 Swing을 사용하여 디자인하는 방법을 배우는 것이 더 중요한 문제 일 수 있습니다. 우편 번호와 우리가 도와 드리겠습니다. –

+0

예, 저는 'this'나 'super'와 같은 키워드를 생각하고있었습니다. (다른 용도로 사용되는 키워드입니다) windowFrame의 인스턴스를 참조 할 때 사용할 수있는 키워드입니다. 이제 막 문제를 해결할 수 있음을 깨달았습니다. 변수 myFrame을 main() 메서드 외부에서 선언하면 windowFrame() 메서드의 ItemListener에 범위가 표시됩니다. 바보 같은 둘러보기에서 많은 시간을 낭비했습니다. 그 hehe에 대한 미안 답장을 보내 주셔서 감사합니다! – dansvank

답변

관련 문제