Hallo zusammen:
Ich Habe eine JFrame, auf diesem befinden sich Knöpfe, ein Menü und ein JPanel.
Hier das JPanel:
Nun möchte ich, wenn ich im Menü einen Menüeintrag auswählen, diesem JPanel eine JList hinzufügen.
Aber da tut sich nichts!
Ist das viellicht garnicht möglich?
Wenn also der Menüeintrag gewählt wird, dann fange ich das Event ab und mache folgende:
// panel ist mein PanelWithList Objekt
// Methode wird nach drücken des Menüeintrags aufgerufen
addListToPanel(panel);
Das Panel wird also immer angezeigt, allerdings ohne die JList.
Die Daten für die JList erhalte ich halt erst wenn der Nutzer einen Ordner über das Menü auswählt.
Die Dateien in dem Ordner werden dann in der JList angezeigt. Daher kann ich die JList erst nach dem drücken des Menüeintrags erstellen.
Ich Habe eine JFrame, auf diesem befinden sich Knöpfe, ein Menü und ein JPanel.
Hier das JPanel:
Code:
public class PanelWithList extends JPanel{
public PanelWithList(){
this.setVisible(true);
this.setBackground(Color.white);
Border listPanelBorder = BorderFactory.createTitledBorder("Existing *.view Files");
this.setBorder(listPanelBorder);
}
}
Nun möchte ich, wenn ich im Menü einen Menüeintrag auswählen, diesem JPanel eine JList hinzufügen.
Aber da tut sich nichts!
Ist das viellicht garnicht möglich?
Wenn also der Menüeintrag gewählt wird, dann fange ich das Event ab und mache folgende:
// panel ist mein PanelWithList Objekt
// Methode wird nach drücken des Menüeintrags aufgerufen
addListToPanel(panel);
Code:
protected void addListToPanel(PanelWithList panel){
JList list = new JList(dirList.getFileNames());
list.setVisible(true);
list.setVisibleRowCount(2);
Font displayFont = new Font("Serif", Font.BOLD, 18);
list.setFont(displayFont);
list.addListSelectionListener(new ListSelectionListener(){
@Override
public void valueChanged(ListSelectionEvent arg0) {
// TODO Auto-generated method stub
}
});
JScrollPane scrollPane = new JScrollPane(list);
panel.add(scrollPane);
panel.repaint();
}
Das Panel wird also immer angezeigt, allerdings ohne die JList.
Die Daten für die JList erhalte ich halt erst wenn der Nutzer einen Ordner über das Menü auswählt.
Die Dateien in dem Ordner werden dann in der JList angezeigt. Daher kann ich die JList erst nach dem drücken des Menüeintrags erstellen.