2012-05-26 3 views
0

저는 JList에서 선택의 mechanincs와 다소 혼동합니다. JFrame에 JPanel이 있다고 가정 해 보겠습니다. 이 패널에는 JList와 TextField가 있습니다. JList의 항목을 클릭하면 선택한 항목이 연한 파란색으로 바뀌고 주위에 진한 파란색 프레임이 만들어집니다. 이 시점에서 getSelectedValue()를 호출하면 올바르게 선택됩니다. 그러나 지금 TextField를 클릭하면 진한 파란색 프레임이 사라지고 (파란색 "강조 표시"가 그대로 유지됩니다.) getSelectedValue()를 호출하면 null이 반환됩니다.Jlist selectedValue가 null입니다.

왜 이런 일이 발생합니까? 포커스가 없다고해도 강조 표시된 항목을 가져 오는 방법은 무엇입니까?

미리 감사드립니다.

편집 : 문제는 내가 설명하지 않은 것 같습니다. 그래도 단추를 누를 때 얻으려고하면 선택된 개체가 null이됩니다. 캡처 : 버튼 목록이 비워과 새 값으로 보충되었다하는 방법을 유발 한 추가

enter image description here

+1

정답이 정답이 아니라면 문제를 나타내는 [sscce] (http://sscce.org)를 작성하여 게시 해보십시오. 그들은 문제를 나타내는 작은 실행 프로그램이 천 단어의 가치가 있다고 말합니다. –

+1

그건 내가 관찰 한 것이 아니야. 코드에 뭔가 잘못되어 있어야합니다. SSCCE를 게시하십시오. –

+0

여기에 있습니다. 리스트에 선택이있는 경우, JList에 포커스가없는 경우에서도, getSelectedValue()를 호출하는 것은 확실히 ** not ** null입니다. –

답변

0

. Apparetnly 변경 사항이 표시되지 않는 경우에도 디버깅, 나는 그것을 무시하고 왜 스크린 샷을 보여주는 것입니다.