Hallo zusammen,
ich möchte in meiner GUI folgendes hinkriegen:
Auf der linken Seite ein JScrollPane(JList(DefaultListModel))), dann zwei Buttons ("Hinzufügen" und "Entfernen"), auf der rechten Seite ein weiterer JScrollPane(JList(DefaultListModel))). Die Idee ist, dass ich im linken JScrollPane eine oder mehrere Elemente auswählen kann, die dann beim Klick auf "Hinzufügen" im linken JScrollPane verschwinden und im rechten hinzugefügt werden (bei "Entfernen" dementsprechend umgekehrt). Hier ist der ActionListener des Buttons:
Das Problem ist, dass getSelectedValues() nicht alle gewählten Werte zurückgibt und ich erkenne nicht woran es liegt und auch keine Regelmäßigkeit, manche will er einfach nicht...(äußerst sich darin, dass im JScrollPane "personenauflistung" einige gewählte Werte stehen bleiben und im JScrollPane "ensembleauflistung" auch nicht hinzugefügt werden)
Ich wäre für jede Hilfe sehr dankbar!
Schönen Gruß,
Maikel
ich möchte in meiner GUI folgendes hinkriegen:
Auf der linken Seite ein JScrollPane(JList(DefaultListModel))), dann zwei Buttons ("Hinzufügen" und "Entfernen"), auf der rechten Seite ein weiterer JScrollPane(JList(DefaultListModel))). Die Idee ist, dass ich im linken JScrollPane eine oder mehrere Elemente auswählen kann, die dann beim Klick auf "Hinzufügen" im linken JScrollPane verschwinden und im rechten hinzugefügt werden (bei "Entfernen" dementsprechend umgekehrt). Hier ist der ActionListener des Buttons:
Java:
personHinzufuegen.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e1){
personenModell=(DefaultListModel)personenauflistung.getModel();
ensembleModell=(DefaultListModel)ensembleauflistung.getModel();
ensembleModell.removeAllElements();
for (int i=0; i<personenauflistung.getSelectedValues().length; i++){
neuEnsemble.addMitglied(Personen.getPerson((String)personenauflistung.getSelectedValues()[i]));
personenModell.removeElement(personenauflistung.getSelectedValues()[i]);
}
for (int i=0; i<neuEnsemble.getMitglieder().length;i++){
ensembleModell.addElement(neuEnsemble.getMitglieder()[i]);
}
personenauflistung.removeAll();
personenauflistung.setModel(personenModell);
ensembleauflistung.removeAll();
ensembleauflistung.setModel(ensembleModell);
hinzuUndEntfern.validate();
hinzuUndEntfern.repaint();
}
});
Das Problem ist, dass getSelectedValues() nicht alle gewählten Werte zurückgibt und ich erkenne nicht woran es liegt und auch keine Regelmäßigkeit, manche will er einfach nicht...(äußerst sich darin, dass im JScrollPane "personenauflistung" einige gewählte Werte stehen bleiben und im JScrollPane "ensembleauflistung" auch nicht hinzugefügt werden)
Ich wäre für jede Hilfe sehr dankbar!
Schönen Gruß,
Maikel