2013-09-25 4 views
1

우리가 디자인하고있는 응용 프로그램에는 JFrame을 상속받은 클래스가 있습니다. 이 클래스는 최종 사용자로부터 일부 입력을 캡처하기 위해 모달 인 JDialog 파생 클래스를 시작합니다. 이 파생 클래스는 이제 새로운 요구 사항으로 인해 다른 JFrame을 시작해야합니다.모달 JDialog 앞에 JFrame 팝업

우리가 직면 한 문제는 JDialog를 모달이 아닌 대화 상자로 설정하면 setVisible (false)을 사용하여 대화 상자를 숨길 때 JDialog의 데이터가 저장되지 않는다는 것입니다.

반면에 모달로 유지하면 새 양식이 시작되지 않고 항상 숨겨집니다.

모달리티가 대화 상자 개체에주는 영향에 대한 아이디어가 있습니까?

새로운 프레임에서 Application Exclusion 양식을 설정하여 문제를 해결할 수있었습니다! 모든 도움을 주신 모든 분들께 감사드립니다 !!

+0

* JDialog를 모달이 아닌 대화 상자로 설정하면 setVisible (false)을 사용하여 대화 상자를 숨길 때 JDialog의 데이터가 저장되지 않습니다. * 대화 상자의 양식이 데이터를 가져 오는 방법에 영향을 미치지 않는다고 생각합니다. 그것을 처리하고 처리합니다. –

+0

안녕하세요 해리, 나도 그 중 하나를 생각하지 않았다. 그래서 나는 그 옵션을 들여다 보지 못했지만 분명히 대화를 숨기면 대상도 파괴되어 데이터를 잃어 버리게된다. 다른 방법으로는 설명 할 수 없습니다! 따라서 나의 수수께끼, 처리는 두 경우 모두 동일하지만 한 경우에는 작동하고 다른 경우에는 그다지 효과가 없습니다! – user2815224

+0

대화 상자를 닫은 후 또는이 대화 상자를 사용하는 중에 새 프레임이 나타나야합니까? –

답변

0

필자는 양식이 문제가 아니거나 문제의 일부라고 말할 수 있습니다. 질문은 데이터를 저장하는 방법입니다. 대화 상자를 숨길 때 자동으로 발생하지 않습니다. 그렇습니까? 대화 상자에서 데이터를 추출하고 저장하기 위해 어떤 이벤트 또는 단추 동작을들을 가능성이 높습니다. 따라서 데이터를 추출하고 저장하는 메커니즘을 검토하고 형식이 해제되어있을 때 트리거되지 않는 데이터가 무엇인지 확인해야합니다.

+0

불행히도 응용 프로그램은 다른 누군가에 의해 설계되었으며 우리는 요소 변경에 대한 많은 통제권을 가지고 있지 않습니다! 그래도 도움을 주셔서 감사합니다 !! – user2815224

+0

코드를 변경할 가능성이 없다고하더라도 코드가 작동하지 않는 이유와 해당 코드를 변경하지 않고 작동시키는 법을 찾을 수 있습니다. 실제로 코드를 볼 수 없으면 더 구체적으로 표현하기 어렵습니다. 추가 도움이 필요하면 동일한 동작을 보여주는 샘플 코드가 포함 된 쇼케이스 프로젝트를 제공 할 수 있습니다. 내 대답이 이미 문제를 해결하는 데 도움이 되었다면 정답으로 받아들이면 좋을 것입니다. :-) – Vampire