Avatar billede hakio Novice
14. marts 2004 - 21:03 Der er 16 kommentarer og
2 løsninger

Tilføje array til eksisterende JComboBox

Jeg har en JComboBox, hvortil jeg gerne vil tilføje et array bestående af Strings.
Det er ikke noget problemet at gøre når selve JComboBoksen oprettes første gang - men jeg ønsker at gøre det senere hen (vha ActionListeners).

Metoderne 'add' eller 'addItem' kan dog ikke klare dette... så hvordan gør man ellers !??

Program kort forklaret:
GUI med bl.a. 2 JComboBox og 1 JList findes.
Brugeren vælger et postnr fra JComboBox1. Derefter skal JComboBox 2 opdateres med alle veje (som findes i LinkedList) fra det valgte postnr (pt. her ovennævnte problem er).
Herefter skal brugeren kunne flytte udvalgte veje (en ad gangen) fra JComboBox2 til JList...
Men som sagt er jeg gået istå undervejs... forslag til hvordan element flyttes fra JComboBox til JList er meget velkomne!
Avatar billede _carsten Nybegynder
14. marts 2004 - 21:09 #1
Du kunne eventuelt lave en metode til at skifte model

private void skiftComboBoxModel(){
    minComboBox.setModel(new javax.swing.DefaultComboBoModel() new String {"A","B","C"}));
}
Avatar billede mikkelbm Nybegynder
14. marts 2004 - 21:09 #2
Jeg tror du bliver nødt til at fjerne alle elementerne og så tilføje dine veje i en løkke.
Avatar billede _carsten Nybegynder
14. marts 2004 - 21:10 #3
Der manglede lige et 'x' i DefaultComboBoxModel

minComboBox.setModel(new javax.swing.DefaultComboBoModel() new String {"A","B","C"}));
Avatar billede _carsten Nybegynder
14. marts 2004 - 21:13 #4
Ja - det skete så endnu engang, men mon ikke du selv kan sætte det 'x' ind når jeg ikke kan !!
Avatar billede mikkelbm Nybegynder
14. marts 2004 - 21:20 #5
Det skal vel også være:

minComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[]{"A","B","C"}));

Det andet vil du ikke få meget ud af!
Avatar billede hakio Novice
14. marts 2004 - 21:23 #6
ok.. d måske en mulighed. ku være nice at smide en liste ind direkte. mærkeligt man ik ka d!
jeg vil lige prøve mig frem med setModel - har jeg ik benyttet før...
(still learning this stuff!)
Avatar billede _carsten Nybegynder
14. marts 2004 - 21:23 #7
Du har selvfølgelig ret mikkelbm

Tror jeg lukker og slukker for i dag !!
Avatar billede mikkelbm Nybegynder
14. marts 2004 - 21:24 #8
Og i dette tilfælde:

minComboBox.setModel(new javax.swing.DefaultComboBoxModel(linkedList.toArray()));

hvor linkedList er dine veje.
Avatar billede mikkelbm Nybegynder
14. marts 2004 - 21:38 #9
Med hensyn til din JList kan du gøre følgende (Hvis du har lavet din JList med en DefaultListModel)

i constructoren:

  minComboBox.addActionListener(new ComboListener());

efterfølgende:

private class ComboListener implements ActionListener
{
    public void actionPerformed(ActionEvent e)   
    {       
        Object o = minComboBox.getSelectedItem();

        if (o != null)   
        {
            listModel.addElement(o);           
        }
    }   
}
Avatar billede hakio Novice
14. marts 2004 - 22:27 #10
Jeg har ikke lavet min JList med DefaultlistModel - ved ik lige hva d r...
har bare :
final JList playlist = new JList();

men ellers ser måden meget fornuftig ud - kan du give et eksempel med brug af DefaultListModel mikkelbm ?
tak ;o)
Avatar billede mikkelbm Nybegynder
14. marts 2004 - 22:32 #11
Det kan jeg da:

DefaultListModel listModel = new DefaultListModel();
final JList playlist = new JList(listModel);

Så kan du igennem den styre din JList.

Her kan du se metoderne:

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/DefaultListModel.html
Avatar billede hakio Novice
16. marts 2004 - 09:24 #12
kanon! værsgo.
Avatar billede _carsten Nybegynder
16. marts 2004 - 09:42 #13
Øhhhh  ???

Mig ikke forstå !!
Avatar billede mikkelbm Nybegynder
16. marts 2004 - 23:20 #14
>> hakio

Hvad var din plan med pointene?
Avatar billede hakio Novice
17. marts 2004 - 00:27 #15
ehmm... d var at dele dem mellem Jer - d lykkedes ik måske!?
Avatar billede mikkelbm Nybegynder
17. marts 2004 - 00:41 #16
Vi skal lige ligge et svar :)
Når Carsten har lagt et svar, markerer du os begge og trykker acceptér.
Avatar billede _carsten Nybegynder
17. marts 2004 - 08:57 #17
Svar
Avatar billede hakio Novice
17. marts 2004 - 09:42 #18
Der var den - fedt ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Cyberdivisionen søger IT-supporter til Lokal IT Servicecenter i Karup

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Lead DevSecOps