2010-04-28 2 views
0

내 JFrame의 편집 버튼을 클릭 할 때 열리는 JDialog를 만들었습니다. 제대로 열리고 문제가 없지만 가져 왔을 때 이 코드는 Windows CE 5.0 장치에서이 대화 상자가 두 번 열리고 있습니다. 모자는 편집 버튼에서 한 번만 클릭하지만 대화 상자는 두 번 나타납니다. 편집 버튼을 클릭 할 때 하나의 대화 상자 만 나타나게하고 싶습니다.javax.swing.JDialog가 Windows 장치에 두 번 나타납니다

+0

는 소리. 테스트 환경의 차이점에 대해 더 자세히 알려주고 코드를 보여줄 수 있습니까? – Ham

+0

대화 상자에 대한 다른 호출이 없습니다. 문제는 장치에서 내 데스크톱에서만 예상대로 작동하지만이 코드의 항아리를 win ce 장치에 넣으면 두 번 표시됩니다. –

+0

ListSelectionListener를 사용하고 있는데 목록의 아무 항목이나 클릭 할 때 해당 메서드에서 valueChanged (ListSelectionEvent e) 메서드가 호출되었습니다. 해당 jdialog가 표시되었지만 장치에서이 메서드는 두 번 호출됩니다. –

답변

0

확인 나는 해결책을 가지고 당신이 어딘가에 두 번째 전화를 가지고있는 것처럼

public void valueChanged(ListSelectionEvent e) { 
    if (e.getValueIsAdjusting() == false) { 
     List lsm = (List) e.getSource(); 
     showDialog(); 
     lsm.clearSelection(); 
    } 
} 
+0

서식있는 코드; 잘못된 경우 되돌려주십시오. – trashgod

+0

'! e.getValueIsAdjusting()'술어는'e.getValueIsAdjusting() == false'에 대한 일반적인 대안입니다. – trashgod