JFileChooser für Ordner (?)
lima-city → Forum → Programmiersprachen → Java
abbrechen
auswahl
blanken code
code
compiler
eingabe
endlosschleife
fehlermeldung
folgender code
import
machen
null
ordner
pfad
rasseln
realisieren
schleife
sprache
swing
windows
-
Ich benutze den JFileChooser mit fileSelectionMode DIRECTORIES_ONLY. Ich möchte nämlich, dass ein Ordner ausgewählt werden kann. Dann die Funktion actionPerformed, die auch funktioniert.
Aber wenn ich mit JFileChooser.APPROVE_OPTION abfragen will, ob eine Auswahl getroffen wurde, gibt mir dieser immer den Wert 0 aus.
Wie kann ich das also realisieren? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Folgender Code zeigt das ausgewählte Verzeichnis dann und nur dann an, wenn auch wirklich die Eingabe bestätigt (approved) wurde:
import javax.swing.JFileChooser; import javax.swing.JOptionPane; public class Writer { public static void main (String [] args) throws Exception { JFileChooser jfc = new JFileChooser (); jfc.setFileSelectionMode (JFileChooser.DIRECTORIES_ONLY); if (jfc.showSaveDialog (null) == JFileChooser.APPROVE_OPTION) JOptionPane.showMessageDialog (null, jfc.getSelectedFile ().getAbsolutePath () ); } }
-
Bei deinem Code öffnet sich eigentlich nur ein neuer SaveDialog.
Und das auch, wenn ich Abbrechen drücke. Außerdem kommt dann eine fürchterliche Endlosschleife
Ich wollte ja eigentlich nur, dass, wenn ein Ordner ausgewählt wurde, der Pfad von diesem mir ausgegeben wird. Und nicht, dass sich ein SaveDialog hundertmal öffnet... -
toolz schrieb:
Bei deinem Code öffnet sich eigentlich nur ein neuer SaveDialog.
Und das auch, wenn ich Abbrechen drücke. Außerdem kommt dann eine fürchterliche Endlosschleife
Ich wollte ja eigentlich nur, dass, wenn ein Ordner ausgewählt wurde, der Pfad von diesem mir ausgegeben wird. Und nicht, dass sich ein SaveDialog hundertmal öffnet...
ROFL. Wo genau ist da eine Schleife? Das Ding macht genau EINEN FileChooser auf und bei "OK" eine MessageBox und bei "Cancel" gar nichts.
EDIT: Und um das zu sehen, braucht man nicht einmal einen Kompiler, da reicht das blose Auge.
Beitrag zuletzt geändert: 30.8.2009 19:51:49 von census -
Ja, aber mein Compiler spricht eine andere Sprache...
Der öffnet mir einen SaveDialog und das extremst oft, auch wenn ich Abbrechen drücke.
Wenn ich (X) drücke, rasseln zeilenlange Fehlermeldungen auf mich ein, im Stil einer Endlosschleife. -
toolz schrieb:
Ja, aber mein Compiler spricht eine andere Sprache...
Schade, mein Code ist halt Java. Und mit den Kompilern von Sun und deren Runtime läuft es sowohl unter Windows wie auch unter Linux.
javac Writer.java java Writer
Könnte bitte ein dritter hier im Forum mal den Code oben kompilieren und testen? Danke. -
Moin,
Code funktioniert problemlos und verhält sich wie gewollt.
Hast Du den blanken Code von census mal getestet, toolz?
Oder bereits irgendwo eingebaut, wo eventuell Deine besagte Endlosschleife auftreten könnte?
Ansonsten einfach mal die Fehlermeldung posten.
Gruß,
Pawnee -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage