2013-06-06 2 views
0

내가 넷빈즈 IDE를 사용하여 JFrame의를 만들었습니다. 다른 클래스를 처리하는 하나의 액션을 처리하기 위해 제출 버튼을 누르면 일단 제출 버튼을 비활성화했습니다. 작업이 성공적으로 완료되면 해당 프레임에서 다음 버튼을 사용하도록 설정해야하며 실패 할 경우 동일한 프레임에서 다시 제출 버튼을 사용하도록 설정해야합니다. 그들이 개인 이었기 때문에 나는 다른 클래스에서 액세스 할 수 없습니다. 해당 Jframe 클래스 단추에 대한 개체를 만들면 활성화되지 않은 및 전체 프레임 Initcomponents() 함수를 호출하여 다시 한 번 호출 된 생각합니다.다른 클래스에서 프레임에 JButton의 활성화 - GUIBuilder

1) 어떤 행동이 다른 클래스에서 이월 된 후 해당 프레임의 버튼을 사용하는 방법을.

답변

0

당신은 버튼에 액세스하는 방법, 또는 오히려 당신을 위해 버튼을 가능하게 할 것이다 다른 클래스의 방법이 필요합니다.

또는 당신은 반환 값 성공 또는 실패를 나타내는 및 버튼 상태가 actionPerformed 메소드를 형성 변경할 수에 따라 할 수 있습니다.

1

일반적으로, 나는 보통의 기본 폼은 자식 폼에 ChangeListener을 등록 할 수있는 수단을 제공한다.

그때 필요한 정보가 작성 또는되었음을 나타내는 boolean를 반환 하위 형태의 방법을 제공 (즉, isFormValid)

하위 형태 변화의 임의의 특정 부분이 그 변화 이벤트를 발생, 자식 폼이 변경된 것을 등록 된 리스너에게 통지합니다 (이 경우 부모 폼). 부모 양식은 다음 자식 폼의 상태를 확인하고이 무엇을해야하는지에 대한 의견의 차이를 만들 수 있습니다

...

이 스윙 API에서 투시하는 Observer Pattern의 기본 개념이다.

그것은 (당신이 자식 폼이 부모 폼 수정할 수 싶지 않아요 : P) 당신에게 코드를 분리시켜 물체의 불필요한 노출을 방지 같은 폼에서

+0

모든 것을 ... – sreram

+0

내 대답은 두 가지를 제안한다 나는 당신의 질문에 대한 의미했다 가정 별도의 클래스 중 하나 (아이가) 다른 (부모)에 추가 될 것입니다/형태, ... – MadProgrammer

+0

나는 하나의 형태와 다른 클래스와이 조치는 해당 클래스에서 발생하는 경우 양식에서 버튼을 활성화해야합니다. 그러나 해당 양식 클래스에 대해 obj를 작성하고 enable 옵션을 호출하면 작동하지 않습니다. – sreram