2013-06-28 7 views
0

Я новичок в Vaadin, и я хочу реализовать это: раскрывающийся список A, содержащий имена файлов для одного выбора. и кнопка загрузки файлов после загрузки файла имя файла добавляется в раскрывающемся списке:Обновление раскрывающегося списка после добавления нового элемента

List <String> fileDirList = Utilities.getDirectoryList("/home/amira/runtime/uploads/report"); 

    // Create a selection component 
    Select select = new Select ("Select file"); 

    for (String fileName : fileDirList) { 

     select.addItem(fileName); 
    } 

    public void uploadSucceeded(SucceededEvent event) { 

     String userHome = System.getProperty("user.home"); 
     String filename = event.getFilename(); 


      // Open the file for writing. 
      file = new File(userHome+"/runtime/uploads/report/"+filename); 
      String fileName = filename.substring(0,filename.length()-4); 
      fileDirList.add(fileName); 



    } 
}; 

Проблема, что в раскрывающемся списке не обновляется после загрузки файла и добавления его имя в fileDirList , Итак, как его обновить

ответ

2

При добавлении объекта в файл fileDirList компонент select не распознает это, потому что между ними нет связи.

Вы можете создать метод, который добавляет имя файла для выбора компонента и в списке:

private void addFilename(String sFilename) { 
    fileDirList.add(sFilename); 
    select.addItem(sFilename); 
} 

вызвать этот метод в коде загрузки.