JFileChooser для каталогов на Mac: как заставить его не сосать? - PullRequest
8 голосов
/ 31 августа 2009

JFileChooser в режиме «только для каталогов» на Mac имеет две серьезные проблемы:

1) Вы не можете создавать каталоги с ним

2) Вы не можете переключать диски

Это довольно большая проблема для моего установочного приложения. Насколько я могу судить, Apple не может обойти эту проблему, вы даже не можете активировать не родной инструмент выбора каталогов ... поэтому единственная альтернатива - найти бесплатный / открытый исходный код замены на чистый Java. *

Кто-нибудь знает об этом?

Ответы [ 4 ]

6 голосов
/ 31 августа 2009

А как насчет использования 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);
}
2 голосов
/ 06 ноября 2012

Я использовал JFileChooser с методом showDialog, и у меня не было проблем. Я могу создавать каталоги и sava как файл с именем, которое мне нравится. Если вы используете только метод showOpenDialog, вы не можете создавать каталоги

2 голосов
/ 01 сентября 2009

Я обнаружил, что вы можете установить магическое свойство, которое заставляет средство выбора файлов awt делать правильные вещи:

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

Я смутно припоминаю, как пытался сделать это раньше, когда был на OS X 10.4, и это не сработало, но теперь я на Леопарде, и это работает, так что я счастливый турист.

1 голос
/ 12 мая 2010

JFileChooser может см. Внешние накопители. Перейдите вниз от корня в / Volumes и все диски перечислены там. Это не элегантно, но работает ...

http://lists.apple.com/archives/java-dev///2008/Feb/msg00079.html

...