2014-04-04 11 views
0

을 수정합니다. 그러나 파일을 처리하려면 실제 경로가 필요합니다. 그렇다면 JList이 이름 만 표시하는 동시에 모델이 전체 경로를 저장 한이 결과를 얻는 방법은 무엇입니까? 올바른 데이터DefaultListModel는 JList의보기

답변

3

대신 파일 이름 문자열을 모델로 파일을하지 않는 DefaultListModel<File>를 사용하고 을 추가해야을

다른 방법으로 나는 ...(file1.getAbsolutePath())를 DONE가 수도 있지만 다음 JList를 표시하지 않을 것입니다. JList에 각 파일의 이름 만 표시하는 셀 렌더러를 제공하여 디스플레이의 모양을 변경할 수 있습니다. 예컨대

,

fileList.setCellRenderer(new DefaultListCellRenderer(){ 
    @Override 
    public Component getListCellRendererComponent(JList<?> list, 
     Object value, int index, boolean isSelected, boolean cellHasFocus) { 
     if (value != null) { 
     value = ((File)value).getName(); 
     } 
     return super.getListCellRendererComponent(list, value, index, isSelected, 
      cellHasFocus); 
    } 
});