2010-12-15 10 views
0

Java로 GUI를 작성하고 있습니다. 한 가지 방법은 양식을 초기화하고 표시합니다.Java의 다른 메소드에서 인스턴스 변수에 액세스

buttonListner 클래스에서 'termDB'에 액세스하고 싶습니다. 어떻게해야합니까?

+0

할 수 있습니다. 'CytoscapeAction.this.termDB' – Falmarri

+0

할 수 있습니다. @Falmarri : 이미 너무 복잡합니다. – thejh

+0

그건 그렇고, 관례 상 큰 이름으로 CamelCase라는 클래스 이름을 만들어야하며 변수 이름은 소문자로 시작해야합니다. – thejh

답변

1

여기에 게시 할 때 액세스하십시오. 일부 의견 : (java.awt.Window 실제로,) JFrame

  1. show 방법이 사용되지 않으며, 대신 setVisible(true);를 사용합니다.

  2. 확실하지 않습니다. test.add(hello);이 정말로 필요합니다. 그렇지? 레이블에 프레임을 추가합니다.

  3. termDB.getSelectedItem()Object, JLabel 생성자에 문자열 : termDB.getSelectedItem().toString()이 필요합니까?

+0

당신은이 버그 이후에 내가 알아 내려고했던 모든 것을 선제 공격 할 수있었습니다. 감사! –

0

당신은 ButtonListener의 서브 클래스를 작성하고 당신이 그것을 만들 때에 termDB을 통과하거나 설정할 수 있습니다.

또는 익명의 내부 클래스를 정의하여 버튼 수신기가 필요하고 termDB를 final로 만들 수 있으며 ButtonListener 구현에서 사용할 수 있습니다. 또는 내가 제시 한 첫 번째 옵션 에서처럼 익명 내부 클래스에 termDB 참조를 전달할 수 있습니다.

관련 문제