JFileChooser und JList

Bassip

Mitglied
Hallo,
ich versuche eine Art Liste zu erstellen mit Dateinamen, die man beim JFileChooser auswählt.
Leider wird in meinem Panel nichts angezeigt, aber seht selbst:

Java:
public static void main(String[] args) {

        JFrame meinFrame = new JFrame();
        JPanel meinPanel = new JPanel(new BorderLayout());
        JFileChooser chooser = new JFileChooser();  
        
        meinFrame.setSize(400, 300);
        meinFrame.setVisible(true);
        meinFrame.setLocationRelativeTo(meinPanel);
        meinFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);
        
       chooser.showOpenDialog(null);  
               
        String[] dateiliste = {chooser.getName()};    //gibt den Dateinamen als String wieder
        JList meineListe = new JList(dateiliste);
        meinPanel.add(meineListe);
        meinFrame.add(meinPanel);
        meineListe.setVisible(true);
        meinPanel.setVisible(true);
Danke im Voraus für die Hilfe.
 

Andy17

Aktives Mitglied
Wie soll denn auch etwas angezeigt werden, wenn der FileChooser Dialog noch gar nicht durchlaufen ist? Es zeigt was an: LEER ;)

Mach den Dialog als Methode dannach, dann gib den Wert zurück und aktualisier das Panel -- ZACK es klappt.

LG Andy
 

Bassip

Mitglied
Ich habe jetzt den FileChooser in eine Methode verlagert und sie unterhalb des Panels eingefügt. Leider wird immer noch nichts angezeigt, trotz meinPanel.repaint();.

Mein vollständiger Quellcode:
Java:
    public static void main(String[] args) {

        JFrame meinFrame = new JFrame();
        JPanel meinPanel = new JPanel();

        meinFrame.setSize(400, 300);
        meinFrame.setVisible(true);
        meinFrame.setLocationRelativeTo(meinPanel);
        meinFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);

       JList meineListe = listeVomChooser();

        meinPanel.add(meineListe);
        meinFrame.add(meinPanel);
        meineListe.setVisible(true);
        meinPanel.setVisible(true);
        meinPanel.repaint();

    }

    public static JList listeVomChooser() {
        JFileChooser chooser = new JFileChooser();
        chooser.showOpenDialog(null);
        String[] dateiliste= {chooser.getName()};
        JList meineListe = new JList(dateiliste);
        return meineListe;
    }

Irgendwie muss doch das FileChooser Objekt gebaut werden, damit ich eine JList erstellen kann. Selbst wenn ich erst das Panel dem Frame hinzufüge und es aktualisiere, und danach die JList baue und einfüge, wird nichts angezeigt.
 

Joose

Top Contributor
Java:
    public static void main(String[] args) {

        JFrame meinFrame = new JFrame();
        JPanel meinPanel = new JPanel();

        meinFrame.setSize(400, 300);
        meinFrame.setVisible(true);

}

Code:
setVisible(true)
sorgt doch dafür das die Element angezeigt werden. Warum willst du den JFrame anzeigen lassen bevor du überhaupt Elemente hinzugefügst hast? Normal ruft man diese Methode am Ende auf wenn alles initialisiert ist usw.

So wie du den JFileChooser aufrufst blockiert dieser die weitere Ausführung vom restlichen Code. Warum lässt du ihn denn nicht erst erscheinen wenn man einen Button lickt oder so ähnlich?
 

Bassip

Mitglied
Okay, habe das
Java:
meinFrame.setVisible(true);
verlegt und einen Button eingefügt, der, sobald man draufklickt, die Methode mit der JList-Erzeugung ausführt.
Leider immer noch nichts...

Wer sich meinen Code antun möchte:
Java:
public abstract class Test implements ActionListener {

    JFrame meinFrame;
    JPanel meinPanel;
    JButton meinButton;

    public static void main(String[] args) {

        JFrame meinFrame = new JFrame();
        JPanel meinPanel = new JPanel();
        final JButton meinButton = new JButton("Klick");

        meinFrame.setSize(400, 300);
        meinFrame.setLocationRelativeTo(meinPanel);
        meinFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);

        meinPanel.add(meinButton);
        meinButton.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                if (e.getSource() == meinButton) {
                    listeVomChooser();
                }
            }
            });

        JList meineListe = listeVomChooser();

        meinPanel.add(meineListe);
        meinFrame.add(meinPanel);
        meinPanel.setVisible(true);
        meineListe.setVisible(true);
        meinFrame.setVisible(true);
        meinPanel.repaint();

        }

    public static JList listeVomChooser() {
        JFileChooser chooser = new JFileChooser();
        chooser.showOpenDialog(null);
        String[] dateiliste = {chooser.getName()};
        JList meineListe = new JList(dateiliste);
        return meineListe;
    }

}
 

Bassip

Mitglied
Ich habe jetzt 2 Freunde gefragt und scheinbar hat niemand eine Idee, woran es liegen könnte. Habe ich denn wirklich soviel Mist gebaut?
 

Harry Kane

Top Contributor
Die bisherigen Lösungsvorschläge gehen alle am eigentlichen Problem vorbei. Die unsichtbare JList kommt nicht durch einen Aufruf des JFileChoosers zur unpassenden Zeit. Es ist vollkommen schnuppe, ob der JFileChooser in derselben Funktion aufgrufen wird, in der auch der JFrame sichtbar gemacht wird, oder ob der Aufruf in einer Methode erfolgt, oder ob der Aufruf erst bei Klick eines JButtons erfolgt. Wesentlich ist nur, daß du erst dann die gewünschten Parameter vom JFileChooser abfragst und die in deine JLIst steckst, wenn er sichtbar gemacht wurde (was ja bereits in deinem ersten Posting der Fall war).

Das eigentliche Problem liegt daran, daß JFileChooser.getName() null zurückgibt. Du wolltest wahrscheinlich den Namen der vom JFileChooser ausgewählten Datei haben. Das geht mit einer Methode mit identischem Namen, aber einem zusätzlichen Parameter.
Versuch mal
Code:
chooser.getName(chooser.getSelectedFile())
.
Ausserdem:
1. Reihenfolge bei JFrames: a) anlegen, b)befüllen, c)layouten, d) sichtbar machen, Den call von setSize() kannst du dir sparen. Rufe stattdessen
Code:
meinFrame.pack()
auf und dann, ganz am Schluss,
Code:
meinFrame.setVisible(true)
2. JLists gehören normalerweise in eine JScollPane.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Probleme mit Zugriff auf Dateisystem Windows 10 ( jFileChooser) Java Basics - Anfänger-Themen 17
M Interface JFileChooser vergrößern Java Basics - Anfänger-Themen 4
V Mehrere Dateien aus JFileChooser in eine ArrayList speichern Java Basics - Anfänger-Themen 2
O JFileChooser Verhalten -Pfad Java Basics - Anfänger-Themen 15
D Datei mit JFileChooser erstellen Java Basics - Anfänger-Themen 5
M Umgebungsvariable JFileChooser#setCurrentDirectory via Properties setzen? Java Basics - Anfänger-Themen 5
M JFileChooser Ordner auswählen Java Basics - Anfänger-Themen 5
E Bild per Verzeichnis/JFileChooser auf JPanel laden Java Basics - Anfänger-Themen 13
B JUnit für JFileChooser Java Basics - Anfänger-Themen 6
B FileWriter und JFileChooser zusammenfügen Java Basics - Anfänger-Themen 3
B Methoden JFileChooser und sein "Startverzeichnis" Java Basics - Anfänger-Themen 3
D JFileChooser & FileReader Java Basics - Anfänger-Themen 4
CR7 JFileChooser DateiÖffnen Java Basics - Anfänger-Themen 7
G JFileChooser "alle Dateien" unterbinden Java Basics - Anfänger-Themen 3
K Methoden JFileChooser Dateipfadübergabe Java Basics - Anfänger-Themen 5
S Wechselmedien in JFileChooser Java Basics - Anfänger-Themen 4
H speichern unter (JFileChooser) Java Basics - Anfänger-Themen 2
H JFileChooser... dateispeicherpfad selbst aussuchen Java Basics - Anfänger-Themen 4
M Bild aus URL via JFileChooser speichern Java Basics - Anfänger-Themen 10
D JFileChooser gewählte Datei "verwenden" Java Basics - Anfänger-Themen 2
I Probleme mit jFileChooser Java Basics - Anfänger-Themen 2
c_sidi90 Jfilechooser Problem Dateinamefeld Java Basics - Anfänger-Themen 11
D JFileChooser Java Basics - Anfänger-Themen 18
S JFileChooser - Dateinamen vorschlagen/Inhalt der Ausgabe prüfen Java Basics - Anfänger-Themen 3
Z JFileChooser/ Panel + Menüproblem Java Basics - Anfänger-Themen 3
Z CSV-Datei einlesen mit dem JFileChooser !!! Java Basics - Anfänger-Themen 5
A JFileChooser - ungefragtes überschreiben Java Basics - Anfänger-Themen 12
I (JFileChooser)Wie kann eine Jar auf Dateien eines bestimmten Ordners zugreifen? Java Basics - Anfänger-Themen 9
W JFileChooser - Eingebbare Zeichen begrenzen Java Basics - Anfänger-Themen 3
T Standardordner für JFileChooser festlegen Java Basics - Anfänger-Themen 2
R jFileChooser aus main- Programm aufrufen Java Basics - Anfänger-Themen 3
G Mehrere Dateien mit JFilechooser auswählen und öffnen. Java Basics - Anfänger-Themen 6
B Wie Dateitypauswahl in JFileChooser Opendialog begrenzen? Java Basics - Anfänger-Themen 2
M JFileChooser Dateityp vorbelgen Java Basics - Anfänger-Themen 3
G Mit jFileChooser Pfad rauskriegen? Java Basics - Anfänger-Themen 3
A JFileChooser soll sich letzten ordner merken Java Basics - Anfänger-Themen 4
D Vorschau bei jfilechooser? Java Basics - Anfänger-Themen 3
G JFileChooser - Change Icon Problem! Java Basics - Anfänger-Themen 2
J Wait_Cursor beim JFileChooser? Java Basics - Anfänger-Themen 8
G JFileChooser übergabe an Directory Java Basics - Anfänger-Themen 4
X JFileChooser Auswahl Java Basics - Anfänger-Themen 4
A JFileChooser DefaultDirectorie Java Basics - Anfänger-Themen 7
G jFileChooser speichern + Fehlermeldung Java Basics - Anfänger-Themen 10
S JFileChooser konfigurieren Java Basics - Anfänger-Themen 6
M JFileChooser, Nur im C:Programme Java Basics - Anfänger-Themen 5
A JFileChooser Darstellung Java Basics - Anfänger-Themen 3
G jFileChooser auf den Abbrechen-Button reagieren Java Basics - Anfänger-Themen 3
R JFileChooser hängt java Programm auf Java Basics - Anfänger-Themen 6
S JFileChooser öffnet Unterverzeichnisse sehr langsam Java Basics - Anfänger-Themen 2
O JFileChooser Filter an Dateinamen hängen Java Basics - Anfänger-Themen 4
G speichern mit JFileChooser Java Basics - Anfänger-Themen 2
G jFileChooser Java Basics - Anfänger-Themen 8
G JFileChooser - Anzeige beschleunigen Java Basics - Anfänger-Themen 2
G JFileChooser kommt doppelt Java Basics - Anfänger-Themen 3
2 JFileChooser- Dateien nur als bestimmte Formate speichern Java Basics - Anfänger-Themen 4
E JFileChooser -> Verzeichnis setzen Java Basics - Anfänger-Themen 10
E JFileChooser- Dateiname Feld? Java Basics - Anfänger-Themen 2
B JFileChooser problem Java Basics - Anfänger-Themen 3
N immer als *.xml speichern (jfilechooser) Java Basics - Anfänger-Themen 2
P Problem mit JFileChooser und FileFilter Java Basics - Anfänger-Themen 8
D Pfad-Auswahl mit dem JFileChooser Java Basics - Anfänger-Themen 8
H JFileChooser Problem Java Basics - Anfänger-Themen 3
B JFileChooser Abfrage für Datei speichern Java Basics - Anfänger-Themen 3
G Jfilechooser ordner auswählen? Java Basics - Anfänger-Themen 2
D JFileChooser Darstellung ändern? Java Basics - Anfänger-Themen 4
G JFileChooser EventListener auf Öffnen Button Java Basics - Anfänger-Themen 3
J NetBeans und JFileChooser Java Basics - Anfänger-Themen 4
M JFileChooser Überschreiben Dialog? Java Basics - Anfänger-Themen 2
M JFileChooser - Dateiendung vorgeben? Java Basics - Anfänger-Themen 13
G JFileChooser - Datei speichern Java Basics - Anfänger-Themen 9
P JFileChooser soll nur .txt files anzeigen Java Basics - Anfänger-Themen 5
P JFileChooser: Methode: setCurrentDirectoy (File Dir) gehtNet Java Basics - Anfänger-Themen 2
F JFileChooser Java Basics - Anfänger-Themen 33
S BufferedReader (JFileChooser) Java Basics - Anfänger-Themen 2
H JFileChooser - FileFilter Java Basics - Anfänger-Themen 2
T neue Instanz von JFileChooser => applikation friert ein Java Basics - Anfänger-Themen 2
B JFileChooser <-> FileDialog Java Basics - Anfänger-Themen 4
S FileDialog/ JFileChooser, Bilder laden, Dateifilter, Diashow Java Basics - Anfänger-Themen 8
B JFileChooser für Files and Directories Java Basics - Anfänger-Themen 3
S Probleme mit JFileChooser! Java Basics - Anfänger-Themen 4
M JFileChooser Directory setzen Java Basics - Anfänger-Themen 6
M JFileChooser Rückgabewert Java Basics - Anfänger-Themen 2
T JFileChooser für Ordner Java Basics - Anfänger-Themen 7
S Größe einer Datei, JFileChooser Java Basics - Anfänger-Themen 5
G Frage zum jFileChooser.showSaveDialog Java Basics - Anfänger-Themen 2
J JFileChooser Java Basics - Anfänger-Themen 4
Mady Daten von JList & Combobox in JTable adden Java Basics - Anfänger-Themen 2
U JList erstellen Java Basics - Anfänger-Themen 2
Soloeco JList/DefaultListModel: Wie kann ich ein Panel hinzufügen? Java Basics - Anfänger-Themen 1
J Objekt bei Auswahl in jList ändern Java Basics - Anfänger-Themen 6
D JList ListSelectionEvent entfernen? Java Basics - Anfänger-Themen 13
F JList Elemente mit Strings vergleichen Java Basics - Anfänger-Themen 12
S Export aus JList Java Basics - Anfänger-Themen 6
M Erste Schritte JList einträge Java Basics - Anfänger-Themen 1
M Erste Schritte Doppelte Ausgabe? (JList) Java Basics - Anfänger-Themen 1
M Erste Schritte Auswahl in einer JList Java Basics - Anfänger-Themen 2
P JList, aus selectedValue bestimmten Wert aus Containerklasse auslesen Java Basics - Anfänger-Themen 4
N JList + DefaultListModel + JScrollPane --> ensureIndexIsVisible funktioniert nicht immer Java Basics - Anfänger-Themen 1
C JList Einträge nach Datum sortieren Java Basics - Anfänger-Themen 3
J Element zu jList hinzufügen NullPointerExcepetion Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben