簡體   English   中英

JFileChooser無法點擊“選擇”

[英]JFileChooser can't click 'choose'

在我的Java程序中,有一部分用戶可以選擇和更改工作目錄。 問題是當我在選擇目錄路徑后單擊“選擇”時,沒有執行任何操作。 選擇窗口保持打開狀態。

但是,當我在“文件名”字段中輸入任何文本或選擇目錄中的任何文件並單擊“選擇”時,窗口將被關閉並選擇目錄。

我的代碼非常簡單,我真的不明白為什么它不起作用。 你可以在這里找到我的代碼:

JFileChooser chooser = new JFileChooser();
int returnVal = chooser.showOpenDialog(null);
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if(returnVal == JFileChooser.APPROVE_OPTION) {
   stringHomeDir = chooser.getCurrentDirectory().getPath();
}
...

如何更改它以便用戶可以輕松選擇文件選擇器中的目錄?

int returnVal = chooser.showOpenDialog(null);
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

這兩個語句的順序應該相反,因為showOpenDilaog方法會阻塞直到它關閉。

更改語句的順序並使用JFileChooser類的setSelectedFile(File)方法。

JFileChooser chooser = new JFileChooser();
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

chooser.setSelectedFile(new File(chooser.getCurrentDirectory() + "/" + "Downloads")));

int returnVal = chooser.showOpenDialog(null);

...

'MyDocuments'是JFileChooser的默認當前目錄,'Downloads'是'MyDocuments'的子目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM