-2

내 클라이언트 서버 응용 프로그램에 간단한 GUI를 쓰고 있습니다. GUI 클라이언트 응용 프로그램은 정상적으로 작동했지만 클라이언트 응용 프로그램보다 간단한 로그인 폼을 추가하면 클라이언트와 서버 간의 통신이 작동하지 않습니다. 여기 내 클라이언트의 GUI을 만드는 코드입니다 (코드는 로그인 양식에 버튼을 "로그인"는에 - 나는 버튼 로그인을 클릭하면 양식은 가까운 및 클라이언트 응용 프로그램이 열려) :GUI 멀티 스레드 및 소켓

new testUI().setVisible(true); 
dispose(); //close Login Form 
+4

SO는 코드 생성기가 아니므로 더 빨리 도움을 받으려면 [SSCCE] (http://sscce.org/), 짧고, 실행 가능하고, complable하고, 거의 문제는 아닙니다. 그렇지 않으면이 질문에 전혀 답할 수 없습니다 – mKorbel

+0

"작동하지 않음"이 너무 모호합니다. 정확히 어떻게됩니까? 소켓 처리 코드를 보여줍니다. –

+0

GUI 응용 프로그램이 있습니다. "testUI"이고 서버 통신은 괜찮습니다. "loginForm"을 추가했습니다 - "testUI"- (위의 "로그인"버튼을 클릭 한 후) - testUI는 서버와 통신하지 않습니다. – user1518451

답변

0

로그인하면 양식이 모달이 아닌 경우 setVisible() 메서드가 즉시 반환되고 사용자가 양식을 처리하기 전에 양식을 삭제합니다.

로그인 폼이 JDialog를 확장하고 있으며 modal=true 매개 변수가 JDialog 클래스의 생성자로 전달되었는지 확인하십시오.

+1

자세한 내용은 [대화 상자 작성 방법] (http://docs.oracle.com/javase/tutorial)을 확인하십시오. /uiswing/components/dialog.html) – MadProgrammer