W mojej aplikacji chcę, aby użytkownik mógł wybrać katalog do przechowywania rzeczy. Mam pole tekstowe, którego używam do wyświetlania katalogu, który oni " wybrano ve. Jeśli po prostu klikną na katalog (nie przeglądaj go), wszystko jest w porządku. Jeśli jednak dwukrotnie klikną katalog i zajrzą do niego, nazwa katalogu zostanie zduplikowana.Część ścieżki zwrócona z Katalogów Tylko JFileChooser jest czasami powielana
Przykł. Znajdują się w katalogu domowym, wystarczy jedno kliknięcie na folder Pulpit ... zwrócona ścieżka to ~/Desktop. Z drugiej strony, jeśli znajdują się w katalogu domowym, kliknij dwukrotnie folder Pulpit, a teraz znajdują się w folderze Pulpit, zwrócona ścieżka to ~/Desktop/Destkop.
Oto co robię:
JFileChooser chooser = new JFileChooser();
chooser.setMultiSelectionEnabled(false);
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
int returnVal = chooser.showOpenDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File f = chooser.getSelectedFile();
loadField.setText(f.getPath());
}
Próbowałem też zrobić coś jak chooser.getCurrentDirectory()
ale to naprawdę nie działa.
Edit: Korzystanie z systemu Mac OS X, Java 1.6
z której wersji systemu operacyjnego i Java korzystasz? – akf
Mac Java ma wiele problemów. Powinieneś przesłać raport o błędzie do Sun? Możesz także wypróbować OpenJDK 6/Java 7? – akarnokd
Apple odpowiada za ich implementację Java. Błędy związane z implementacją Apple powinny, jak sądzę, zostać przesłane do Apple. –