2012-04-03 5 views
1

제가 겪고있는 문제는 JList에 10 개의 파일 목록이 있다는 것입니다. JButton에서 "첨부 된 파일 (들)"이 있습니다. 달성하고자하는 것은 사용자가 JList의 파일을 클릭하면 변수 fileCount ('0'을 나타냄)가 증가합니다. 다음은 코드입니다.자바 - JList에서 선택한 파일이있을 때마다 변수를 어떻게 증분합니까?

@Override 
public void mouseClicked(MouseEvent arg0) { 
     int idx = list_fileListing.getSelectedIndex(); 
     String eFiles[] = ig.getListOfFiles(); 

     if(idx == list_fileListing.getSelectedIndex()){ 
    fileCount++; 
    } 
} 

기본적으로 파일이 선택되면 fileCount가 증가합니다. 이 작업을 수행하는 방법에 대한 제안 사항은 무엇입니까?

답변

3

JButton 클래스에는 다른 많은 Swing 구성 요소 클래스와 마찬가지로 setText() 메서드가 있습니다. 이 방법을 사용하면 현재 JButton에있는 텍스트를 덮어 쓸 수 있습니다.

예 :이 도움이

if(idx == list_fileListing.getSelectedIndex()) 
{ 
    fileCount++; 
    yourButtonName.setText("attached file(s) " + fileCount); 
} 

희망.

+0

그러나 이제는 새로운 문제는 목록에서 다른 파일을 클릭하기로 결정한 경우에만 1 개의 파일을 등록하는 것입니다. 현재 답변에서 파일을 클릭 할 때마다 클릭 한 파일 수에 관계없이 fileCount가 증가합니다. 필요한 것은 선택이 변경 될 때마다 fileCount가 0으로 재설정 된 다음 선택한 파일을 다시 계산하는 것입니다. – SpicyWeenie

+0

두 개 이상의 파일을 선택하면 어떤 이벤트가 발생합니까? 일단 어떤 이벤트가 발생했는지 파악하면 얼마나 많은 항목이 선택되었는지와 그 금액만큼 증가하는지 확인할 수 있습니다. –

+0

내가 아는 발사가 없습니다. 내 목록을 만들고 테스트 한 후 Shift/Ctrl + 클릭을 사용하여 목록에서 여러 파일을 선택할 수있었습니다. 선택 사항이 변경되었지만 지금까지 행운이 없음을 확인할 수있는 무언가가 있는지 여전히 검색하려고합니다 ... – SpicyWeenie

관련 문제