Java로 GUI를 작성하고 있습니다. 한 가지 방법은 양식을 초기화하고 표시합니다.Java의 다른 메소드에서 인스턴스 변수에 액세스
buttonListner 클래스에서 'termDB'에 액세스하고 싶습니다. 어떻게해야합니까?
Java로 GUI를 작성하고 있습니다. 한 가지 방법은 양식을 초기화하고 표시합니다.Java의 다른 메소드에서 인스턴스 변수에 액세스
buttonListner 클래스에서 'termDB'에 액세스하고 싶습니다. 어떻게해야합니까?
여기에 게시 할 때 액세스하십시오. 일부 의견 : (java.awt.Window
실제로,) JFrame
의
show
방법이 사용되지 않으며, 대신 setVisible(true);
를 사용합니다.
확실하지 않습니다. test.add(hello);
이 정말로 필요합니다. 그렇지? 레이블에 프레임을 추가합니다.
termDB.getSelectedItem()
Object
, JLabel
생성자에 문자열 : termDB.getSelectedItem().toString()
이 필요합니까?
당신은이 버그 이후에 내가 알아 내려고했던 모든 것을 선제 공격 할 수있었습니다. 감사! –
이름을 사용하여 액세스하면됩니다. 외부 클래스 내부와 마찬가지로 작동합니다.
은 참조 : http://download.oracle.com/javase/tutorial/java/javaOO/innerclasses.html
바보 같지 않니? 심볼을 찾을 수 없을 때 컴파일러는 termDB가 아니라 getSelectedItem() 메소드를 참조하고있었습니다. 감사. –
당신은 ButtonListener의 서브 클래스를 작성하고 당신이 그것을 만들 때에 termDB을 통과하거나 설정할 수 있습니다.
또는 익명의 내부 클래스를 정의하여 버튼 수신기가 필요하고 termDB를 final로 만들 수 있으며 ButtonListener 구현에서 사용할 수 있습니다. 또는 내가 제시 한 첫 번째 옵션 에서처럼 익명 내부 클래스에 termDB 참조를 전달할 수 있습니다.
할 수 있습니다. 'CytoscapeAction.this.termDB' – Falmarri
할 수 있습니다. @Falmarri : 이미 너무 복잡합니다. – thejh
그건 그렇고, 관례 상 큰 이름으로 CamelCase라는 클래스 이름을 만들어야하며 변수 이름은 소문자로 시작해야합니다. – thejh