FileChooser

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,

ich hab hier ein Beispiel-Prog wo ich mit JFileChooser eine Datei auswähle, doch wenn ich den Abbrechen-Button drücke, wird das ganze Programm geschlossen, ich will aber dass nur der JFileChosser geschlossen wird, was kann ich anstatt von System.exit(0); verwenden?

Code:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;

import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.filechooser.FileFilter;

public class Sample {
public void offnenFens() {
boolean selected = false;
while (!selected) {
String home = System.getProperty("user.home");
JFileChooser fc = new JFileChooser(home);
fc.setFileFilter(new FileFilter() {
@Override
public boolean accept(File f) {
return f.isDirectory()
|| f.getName().toLowerCase().endsWith(".txt");
}

@Override
public String getDescription() {
return "Texte";
}
});
int state = fc.showOpenDialog(null);

if (state == JFileChooser.APPROVE_OPTION) {
selected = true;
File file = fc.getSelectedFile();
laden(file);
} else
System.exit(0);
}
}

private void laden(File file) {
try {
BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
String str;
while ((str = bufferedReader.readLine()) != null) {
System.out.println(str);
}
bufferedReader.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

/**
* @param args
*/
public static void main(String[] args) {
Sample axel = new Sample();
axel.offnenFens();
}

}

Gruss
 
S

SlaterB

Gast
} else {
// do nothing
}

der JFileChooser wird von alleine geschlossen, egal ob Abbruch oder sonstige Auswahl
 
G

Guest

Gast
Ne das geht nicht, wenn ich dann auf Abbrechen drücke, dann schließt sich zwar der FileChooser, aber dann öffnet sich sofort ein neuer, also eine Endlosschleife bis man den Prozess killen muss, sonst kriegt man nicht geschlossen!?
 
S

SlaterB

Gast
und wieso ist da eine Endlosschleife bzw. ein Thread?
normal ist das nicht (alter Werbespruch)

dann musst du in dem else-Fall irgendeine boolean-Variable setzen:
beendet = true;
oder den Rückgabewert der Unteroperation oder sonstwas

und diese Information muss in der Schleife berücksichtigt werden



edit: ah, habe die Schleife entdeckt ;)
 
G

Guest

Gast
Danke,
ich hab nochmals nachgeguckt und dann anstatt
System.exit(0);


selected = true;

gesetzt und es schließt sich jetzt nur das JFileChooser-Fenster!

Gruss
 
S

SlaterB

Gast
da du nun in jedem Fall (if oder else) selected = true setzt,
kannst du auf selected und die Schleife ganz verzichten,

dann hast du wieder einen normalen FileChooser und musst im else-Fall gar nix machen ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Fehlermeldungen bei Cancel FileChooser AWT, Swing, JavaFX & SWT 7
Bluedaishi FileChooser.ExtensionFilter AWT, Swing, JavaFX & SWT 4
C FileChooser Save-Dialog zeigt Files nicht an AWT, Swing, JavaFX & SWT 3
GenerationLost JavaFX FileChooser speichern ohne Zieldatei? AWT, Swing, JavaFX & SWT 12
N Swing Filechooser zweifarbig machen AWT, Swing, JavaFX & SWT 33
N Swing Zweifarbiges Layout für den Filechooser AWT, Swing, JavaFX & SWT 12
B FileChooser anpassen AWT, Swing, JavaFX & SWT 2
D Swing FileChooser mit einem neuen Rootordner AWT, Swing, JavaFX & SWT 6
X Bild via FileChooser in paint-Methode laden AWT, Swing, JavaFX & SWT 2
N FileWriter mit FileChooser AWT, Swing, JavaFX & SWT 3
D Swing JOptionPane + FileChooser .. Reihenfolge wichtig!? AWT, Swing, JavaFX & SWT 7
M FileChooser Bilder auswählen AWT, Swing, JavaFX & SWT 8
kodela FileChooser mit "absolutem" Root-Verzeichnis öffnen AWT, Swing, JavaFX & SWT 2
L Filechooser File Öffnen AWT, Swing, JavaFX & SWT 4
N FileChooser in View AWT, Swing, JavaFX & SWT 3
E Swing filechooser - nur Netzwerkpfade anzeigen lassen AWT, Swing, JavaFX & SWT 14
H FileChooser und Filter AWT, Swing, JavaFX & SWT 4
F Problem mit Mehrfachauswahl bei Filechooser AWT, Swing, JavaFX & SWT 2
G Fragen zum FileChooser AWT, Swing, JavaFX & SWT 5
G FileChooser Bild Speichern AWT, Swing, JavaFX & SWT 3
R filechooser soll sich das Verzeichnis merken AWT, Swing, JavaFX & SWT 2
K Bilddatei mit Filechooser auswählen und anzeigen/impotieren AWT, Swing, JavaFX & SWT 18
G FileChooser - Größe (Dimension) ändern AWT, Swing, JavaFX & SWT 2
V System Look and Feel, FileChooser, Optionen einer jar-Datei AWT, Swing, JavaFX & SWT 10
M bei filechooser.showSaveDialog(null); auf Datein. zugreifen AWT, Swing, JavaFX & SWT 2
U FileChooser Layout - Threads? AWT, Swing, JavaFX & SWT 17
D FileChooser der anderen Art. AWT, Swing, JavaFX & SWT 2
C falsche Pfadangabe bei FileChooser AWT, Swing, JavaFX & SWT 7
W Vorschau mit FileChooser: Ereignis bei Datei ausgewählt? AWT, Swing, JavaFX & SWT 4
H FileChooser AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen

Neue Themen


Oben