2009-06-02 4 views
6

사용자 지정 데이터 모델을 사용하는 JList에 스크롤 막대를 추가하려고합니다. JScrollPane 실제로 추가 은 스크롤바를 추가하는 대신 JList를 숨 깁니다. 스크롤 막대를 사용하여 코드를 실행하면 JList가 표시되지 않으며 데이터를 볼 수 없습니다.JList에 스크롤 막대 추가

playlistField = new JList(playlist); // playlist is a data model 
playlistField.setLocation(32, 220-36); 
playlistField.setSize(350,120); 
playlistField.setVisible(true); 
this.add(playlistField); 

listScrollPane = new JScrollPane(playlistField, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); 

listScrollPane = ... 행을 주석 처리하면 JList가 다시 표시되고 예상대로 작동합니다.

무엇을 놓쳤습니까?

답변

6

스크롤 막대를 목록이 아닌 컨테이너에 추가해야합니다.

현재 예제에서 스크롤 패널에 목록을 추가하면 구성 요소가 하나의 상위 항목 만 가질 수 있으므로 원본 컨테이너에서 목록을 제거합니다.