2009-08-31 14 views
7

JFileChooser中在Mac上「僅目錄」模式有兩個嚴重的,沉重的問題:Mac上的目錄的JFileChooser:如何使它不吸?

1)你不能使用它創建

2)目錄不能切換驅動器

這是相當一個我的安裝程序應用程序的巨大問題。據我所知,Apple沒有辦法解決這個問題,你甚至不能激活非本地目錄選擇器......所以唯一的選擇是找到一個免費/開源的純Java替換小部件。

有人知道嗎?

+1

這是一個重複的: http://stackoverflow.com/questions/845403/how-can-i-make-a-jfilechooser-on-the-mac- that-lets-users-create-directories – Tom 2009-08-31 07:43:41

+0

...除了另一個問題沒有解決「開關驅動」部分。 – Jonik 2009-08-31 12:28:34

+1

嗯,兩人都明顯被問同一個人,間隔3個月... – Jonik 2009-08-31 12:30:23

回答

5

使用java.awt.FileDialog怎麼樣?它顯示一個本地文件選擇器並允許創建新的文件夾。

public static void main(String[] args) throws UnsupportedLookAndFeelException { 
    JFrame frame = new JFrame(); 
    System.setProperty("apple.awt.fileDialogForDirectories", "true"); 
    FileDialog d = new FileDialog(frame); 
    d.setVisible(true); 
} 
+0

這是爲了挑選文件,而不是目錄。我不認爲有可能通過該小部件選擇一個目錄。 – 2009-08-31 20:48:52

+1

我添加了缺失的行,讓它允許選擇文件夾。我在我的商業應用程序中使用它來讓用戶選擇文件夾。它比JFileChooser好得多 – 2009-09-01 07:56:06

2

我發現,有一個神奇的屬性,你可以設置,使AWT filepicker做正確的事情:

System.setProperty("apple.awt.fileDialogForDirectories", "true"); 

我依稀記得當我在OS X 10.4和前嘗試這種沒有工作,但現在我在豹,它確實,所以我是一個快樂的露營者。

+0

這確實適用於OS X 10.4。 – 2009-09-01 07:57:11

2

我用的JFileChooser與ShowDialog方法,我沒有問題。我可以用我喜歡的名稱創建目錄和sava作爲文件。如果你只使用showOpenDialog方法,你不能創建目錄

相關問題