/* Beispiel zur Verwendung der AWT-Klasse FileDialog nh - 06/2007 */ import java.awt.*; import java.awt.event.*; public class FileDialogEx extends Frame implements ActionListener { FileDialog fd; // Objekt deklarieren Button b1, b2; public void actionPerformed(ActionEvent e) { /* Falls der Beenden-Knopf gedrueckt wurde (erfahren wir durch getSource()) wird das Programm sofort beendet. */ if (e.getSource() == b2) { dispose(); System.exit(0); } /* Hier landen wir, wenn b1 gedrueckt wurde, denn sonst waere das Programm ja bereits zuvor beendet worden. */ fd.setVisible(true); // FileDialog anzeigen String chosenDir = fd.getDirectory(); // gewaehltes Verzeichnis String chosenFile = fd.getFile(); // gewaehlter Dateiname if (chosenDir == null || chosenFile == null) // beide == null bedeutet System.out.println("Du hast den Dialog abgebrochen!"); // Abbruch! else { System.out.println("Du hast die Datei < " + chosenFile + " >"); System.out.println("im Verzeichnis < " + chosenDir + " > gewaehlt!"); } fd.dispose(); // FileDialog-Fenster schliessen } public FileDialogEx() { super("Beispiel zu FileDialog"); setSize(300, 100); /* FileDialog kann zum Auswaehlen einer Datei zum Oeffenen (LOAD) oder Speichern (SAVE) verwendet werden, (Angabe als Option im Konstruktor */ fd = new FileDialog(this, "Bitte eine Datei waehlen!", FileDialog.LOAD); // Nothing new under the moon... ;-) Panel p = new Panel(); b1 = new Button("Datei waehlen..."); b1.addActionListener(this); b2 = new Button("Beenden"); b2.addActionListener(this); p.add(b1); p.add(b2); add(p); } public static void main(String[] a) { new FileDialogEx().setVisible(true); } }