2013-06-28 72 views
0

我是Vaadin的新手,我想實現這個:一個下拉列表,其中包含單個選擇的文件名。和上傳文件按鈕,上傳文件的文件名添加到下拉列表後:添加一個新項目後刷新下拉列表

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); 
} 

援引上傳代碼此方法。

相關問題