AWT FileDialog Filter wird ignoriert

Java:
public class MyFileDialog extends javax.swing.JFrame implements java.io.FilenameFilter {

    public MyFileDialog() {
        FileDialog dialog = new FileDialog(this, "Auswahl");
        dialog.setFilenameFilter(this);
        dialog.setVisible(true);
    }

    public boolean accept(File file, String name) {
        System.out.println("test");
        return file.isDirectory();
    }
    
}
Java ignoriert einfach meinen Filter, sprich die accept()-Methode wird nie aufgerufen?! Im JFileChooser funktionierts, allerdings wenn man das Design dort auf SystemLook stellt sieht das total Scheisse aus. Deshalb will ich das original von Windows =/
 

javimka

Top Contributor
Ich sehe leider nicht, wieso accept nicht aufgerufen wird, aber muss doch etwas bemerken:
Deine Klasse heisst xxxDialog, erbt aber von JFrame und implementiert einen Filter. Im Konstruktor wird dann eine neue Instanz eines Dialogs erstellt und mit setVisible sichtbar gemacht. Finde ich ein bisschen komisch.
 
so?
Java:
package ch.benjaminconrad.exporter;

/**
 *
 * @author Benjamin Conrad
 */
public class Exporter {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        try {
            javax.swing.UIManager.setLookAndFeel(javax.swing.UIManager.getSystemLookAndFeelClassName());
        } catch(Exception ex) {
            System.out.println(ex.getMessage());
        }

        MyFileDialog dialog = new MyFileDialog();

        /*java.io.File dir = new java.io.File("dsadsadas");
        String[] files = dir.list(new java.io.FilenameFilter() {
            public boolean accept(java.io.File d, String name) {
                return name.endsWith(".txt");
            }
        });
        for(String file : files) {
            System.out.println(file);
        }*/
    }

}
Java:
package ch.benjaminconrad.exporter;

import java.awt.*;
import java.io.File;

/**
 *
 * @author Benjamin Conrad
 */
public class MyFileDialog extends javax.swing.JFrame implements java.io.FilenameFilter {

    public MyFileDialog() {
        FileDialog dialog = new FileDialog(this, "Auswahl");
        dialog.setFilenameFilter(this);
        dialog.setVisible(true);
    }

    public boolean accept(File file, String name) {
        System.out.println("test");
        return file.isDirectory();
    }
    
}
 

javimka

Top Contributor
Du hast Recht, das ist seltsam. Aber ich habe einen anderen Weg gefunden, wie du es machen kannst. Verwende den JFileChooser und einen Filter nur für Ordner gibt es bereits.

Java:
        File file = null;
        JFileChooser flc = new JFileChooser();
        flc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
        int val = flc.showOpenDialog(null);
        if (val==JFileChooser.APPROVE_OPTION) {
        	file = flc.getSelectedFile();
        }
 

Michael...

Top Contributor
setFileFilter funktioniert auf Windows nicht FileDialog (Java Platform SE 6):
API-Doku hat gesagt.:
public void setFilenameFilter(FilenameFilter filter)

Sets the filename filter for this file dialog window to the specified filter. Filename filters do not function in Sun's reference implementation for Microsoft Windows.
Solltest Swing (JFileChooser) statt AWT verwenden - auf jeden Fall sollte man beide nicht mischen.

Vielleicht liegt's ja nur daran, dass es sich um Bsp.Code handelt, aber in dem Fall macht es keinen Sinn, dass MyFileDialog von JFrame erbt.
 
Leider sieht der JFileChooser unter Windows (7 und Vista?) total scheisse aus und einige Buttons werden nicht angezeigt wenn ich den auf System Look'n'Feel einstell. Aber ok wenns nicht anders geht..
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I AWT java.awt.FileDialog - "coffee cup"-Icon lässt sich nicht ersetzen AWT, Swing, JavaFX & SWT 14
N JFileChooser bzw. FileDialog Problem AWT, Swing, JavaFX & SWT 10
VfL_Freak Modalität von FileDialog AWT, Swing, JavaFX & SWT 5
J AWT Einmal FileDialog-Beispiel für Dumme bitte AWT, Swing, JavaFX & SWT 6
B AWT FileFilter beim FileDialog AWT, Swing, JavaFX & SWT 4
hdi SWT FileDialog wird an scheinbar beliebiger Position angezeigt AWT, Swing, JavaFX & SWT 2
X Dateiendung im Filedialog AWT, Swing, JavaFX & SWT 8
P SWT - "Combo" aus dem Windows-FileDialog AWT, Swing, JavaFX & SWT 3
technolion FileDialog/keine Multi-Selektion vs. JFileCHooser/kein LaF AWT, Swing, JavaFX & SWT 2
S Filedialog - Dateiname vorbelegen AWT, Swing, JavaFX & SWT 6
P [SWT] FileDialog unsichtbar machen bzw. positionieren AWT, Swing, JavaFX & SWT 8
G FileDialog in SWT AWT, Swing, JavaFX & SWT 2
N Buttons von Filedialog umbenennen AWT, Swing, JavaFX & SWT 3
TheJavaKid DIRECTORY ONLY im FileDialog AWT, Swing, JavaFX & SWT 2
T setSize-Problem in FileDialog AWT, Swing, JavaFX & SWT 4
C AWT FileDialog AWT, Swing, JavaFX & SWT 22
B FileDialog Frage AWT, Swing, JavaFX & SWT 9
R Verzeichnis-Auswahl mit FileDialog ? AWT, Swing, JavaFX & SWT 3
S AWT: FileDialog AWT, Swing, JavaFX & SWT 3
A Swing Filter-Problem AWT, Swing, JavaFX & SWT 1
D Filter in Tabelle Sql AWT, Swing, JavaFX & SWT 6
D JavaFX Table Filter AWT, Swing, JavaFX & SWT 4
J ComboBox als Filter benutzen AWT, Swing, JavaFX & SWT 1
M Filter in die JFace/SWT Tabelle einbauen AWT, Swing, JavaFX & SWT 5
J Kombinieren von Filter-Optionen für JTable AWT, Swing, JavaFX & SWT 4
C Eclipse Filter-Muster AWT, Swing, JavaFX & SWT 2
B Swing Filter für JTable mit Netbeans Editor AWT, Swing, JavaFX & SWT 2
S Swing Tabelle mit Model bei eingeschaltetem Filter synchronisieren AWT, Swing, JavaFX & SWT 6
D Filter für JTable AWT, Swing, JavaFX & SWT 5
M JTable Filter AWT, Swing, JavaFX & SWT 3
C Swing Dynamische JComboBox (Filter) AWT, Swing, JavaFX & SWT 28
S JTable Filter nach Wort oder Wortteil über ganze Tabelle AWT, Swing, JavaFX & SWT 5
jueki Aktuell eingestellten Filter aus einem JFileChooser abfragen. AWT, Swing, JavaFX & SWT 5
M ISelection an Filter übergeben AWT, Swing, JavaFX & SWT 2
L SWT Filter zur TreeViewer hinzufügen AWT, Swing, JavaFX & SWT 9
K JTable wird nicht aktualisiert, wenn Filter gesetzt ist AWT, Swing, JavaFX & SWT 9
E Swing JTree Filter Suche mit Collapse?! AWT, Swing, JavaFX & SWT 4
C JTable Dropdown Filter AWT, Swing, JavaFX & SWT 5
D JTree Filter erstellen AWT, Swing, JavaFX & SWT 4
G Jfilechooser filter AWT, Swing, JavaFX & SWT 10
H FileChooser und Filter AWT, Swing, JavaFX & SWT 4
G Probleme mit JFileChooser und Filter AWT, Swing, JavaFX & SWT 11
G dynamischer Filter bei JTable AWT, Swing, JavaFX & SWT 2
D HSB - Filter AWT, Swing, JavaFX & SWT 3
V Filter im JFileChooser. AWT, Swing, JavaFX & SWT 5
P Methode wird nicht überprüft AWT, Swing, JavaFX & SWT 4
P paintComponent-Methode wird dauernd neu aufgerufen AWT, Swing, JavaFX & SWT 2
G JavaFX LineChart Datenpunkte Markierung wird abgeschnitten AWT, Swing, JavaFX & SWT 1
P JTextField wird nur sehr klein angezeigt und verändert die Größe nicht AWT, Swing, JavaFX & SWT 3
Telisti Javafx Image wird nicht richtig integiert AWT, Swing, JavaFX & SWT 8
J Netbeans die JavaFX-Anwendung wird nicht ausgeführt AWT, Swing, JavaFX & SWT 16
N €-Zeichen wird nicht akzeptiert AWT, Swing, JavaFX & SWT 4
G Problem mit der Anzeige von jLabel. Unlesbar wenn der Text geändert wird. AWT, Swing, JavaFX & SWT 28
berserkerdq2 Wie füge ich ein Bild in javafx mit dem Scenebuilder ein, das automatisch mitgezogen wird, wenn das Fenster vergrößert wird oder Vollbildmodus AWT, Swing, JavaFX & SWT 6
L jComboBox Actionlistener wird beim erstmaligen Befüllen getriggert AWT, Swing, JavaFX & SWT 7
_user_q Objekt.setSelected(false), wenn es nicht mehr fokussiert wird AWT, Swing, JavaFX & SWT 2
S Javafx getResource-Pfad wird nicht erkannt AWT, Swing, JavaFX & SWT 7
U Warum wird zweimal die Affinetransformation estellt (2Dgraphics, Java)? AWT, Swing, JavaFX & SWT 31
DonBronson Gezeichnetes Objekt verschwindet nachdem erneut gezeichnet wird AWT, Swing, JavaFX & SWT 8
ProggersWorld JavaFX TextArea BackgroundImage wird nicht angezeigt AWT, Swing, JavaFX & SWT 3
M Bild wird nicht geladen obwohl sie gefunden wird AWT, Swing, JavaFX & SWT 0
M Nach Export als Runnable Jar wird css nicht merh gefunden AWT, Swing, JavaFX & SWT 22
izoards Outlook Mail erstellen - Signatur wird nicht angezeigt. AWT, Swing, JavaFX & SWT 3
J actionperformed wird nicht aufgerufen/ repaint() AWT, Swing, JavaFX & SWT 6
J Swing Komponente wird unpassend angepasst in der Größe AWT, Swing, JavaFX & SWT 35
J Java FX NullPointerException, ObservableList wird in View nicht angezeigt.. AWT, Swing, JavaFX & SWT 34
S Next_Button wird nicht ausgeführt. AWT, Swing, JavaFX & SWT 6
FrittenFritze Ein Problem mit der CSSBox, die Größe wird nicht angepasst AWT, Swing, JavaFX & SWT 5
CptK windowClosed() nur aufrufen, wenn Fenster nicht über Button geschlossen wird AWT, Swing, JavaFX & SWT 1
J Komponente wird manchmal falsch gezeichnet AWT, Swing, JavaFX & SWT 0
J Swing JList wird nicht angezeigt AWT, Swing, JavaFX & SWT 6
JMölleri Swing Image wird unscharf dargestellt AWT, Swing, JavaFX & SWT 2
JojoSand Java Programm wird nicht gestartet - keinen Fehlerhinweis AWT, Swing, JavaFX & SWT 9
R Text vom Jlabel wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
D JavaFX Bearbeitetes Bild wird nicht gespeichert AWT, Swing, JavaFX & SWT 9
J setOnCloseRequest wird nicht ausgelöst AWT, Swing, JavaFX & SWT 3
P JavaFX Fenster wird nicht angezeigt (Mac) AWT, Swing, JavaFX & SWT 13
B JavaFX Bei Scenen-Wechsel im primaryStage wird aktuelle Fenstergröße nicht mit übernommen AWT, Swing, JavaFX & SWT 16
B JavaFX Warum wird hier eine NullPointer-Exception geworfen? AWT, Swing, JavaFX & SWT 7
M JavaFX javaFX Label-Text wird nicht gesetzt AWT, Swing, JavaFX & SWT 3
O Swing "Eigenes" JPanel wird dem JScrollPane nicht hinzugefügt AWT, Swing, JavaFX & SWT 5
L Swing JLabel wird beim ändern der Schriftart immer neu gezeichnet. AWT, Swing, JavaFX & SWT 2
R Layout Manager null und Component wird nicht hinzugefügt AWT, Swing, JavaFX & SWT 3
Zrebna JavaFX-Projekt mit Bildern funktioniert nicht - um Hilfe wird gebeten AWT, Swing, JavaFX & SWT 14
kodela BufferStrategy wird nicht gefunden AWT, Swing, JavaFX & SWT 5
J JPanel wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
S ImageView wird dem Gridpane nicht zugefügt AWT, Swing, JavaFX & SWT 1
G Repaint wird nicht durchgeführt AWT, Swing, JavaFX & SWT 8
E Warum wird Text im JTextArea erst am Programmende angezeigt ? AWT, Swing, JavaFX & SWT 1
S Swing Panel wird nicht neu gezeichnet AWT, Swing, JavaFX & SWT 3
M Swing GUI wird nach invokeLater() langsam AWT, Swing, JavaFX & SWT 19
Bluedaishi TableView mit Combox wert wird nicht in die TableView gesetzt AWT, Swing, JavaFX & SWT 38
L JFrame wird zu klein erstellt AWT, Swing, JavaFX & SWT 7
T JavaFX Nach Zoomen wird an falscher Stelle gezeichnet AWT, Swing, JavaFX & SWT 0
kodela Swing Letzte Änderung in der Tabelle wird nicht gespeichert AWT, Swing, JavaFX & SWT 5
cool_brivk24 AWT BufferedImage wird nicht geladen AWT, Swing, JavaFX & SWT 17
S JavaFX Wird es überhaupt genutzt? AWT, Swing, JavaFX & SWT 3
FRI3ND GUI wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
J Canvas wird nicht angezeigt AWT, Swing, JavaFX & SWT 10
K Swing JScrollPane wird nicht angezeigt wenn man Components darstellt. AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen


Oben