Avatar billede william_munny Nybegynder
15. februar 2006 - 10:05 Der er 3 kommentarer og
1 løsning

jComboBox.setSelectedItem ?

Hejsa Experter,
jeg har en combobox fyldt med objekter, udfra et af disse objekter ønsker jeg at sætte det valgte objekt i comboboxen. Jeg benytter setSelectedItem til dette men comboboxen viser altid den første i listen. Min kode ser således ud:

this.jComboProtocol.removeAllItems();
//Hent liste af relevante objekter
List l =  qcTrackingControl.ctrlGetProtocolVersions(analysis.getId());
ListIterator iter = l.listIterator();
//Tilføj objekter til comboboxen
while(iter.hasNext())
{
    this.jComboProtocol.addItem(iter.next());
}   
//Set valgte objekt til det nuværende valgte
this.jComboProtocol.setSelectedItem(exp.getProtocol());
Avatar billede bohbs Nybegynder
15. februar 2006 - 10:36 #1
Er du sikker på at elementet findes i listen? Kan du ikke bruge setSelectedIndex();? Du kan jo tjekke om elementet er det rigtige i din while løkke (og evt. finde det rigtige index)
Avatar billede william_munny Nybegynder
15. februar 2006 - 10:43 #2
Rimelig sikker på den eksisterer i listen.
Tror lige jeg tester din ide med setSelectedIndex()
Avatar billede william_munny Nybegynder
15. februar 2006 - 10:55 #3
Dette virker .. smid et svar

this.jComboProtocol.removeAllItems();
List l =  qcTrackingControl.ctrlGetProtocolVersions(analysis.getId());
ListIterator iter = l.listIterator();
int index =0;

while(iter.hasNext())
{
    Protocol p = (Protocol)iter.next();
    this.jComboProtocol.addItem(p);         
    if(p.toString().equalsIgnoreCase(exp.getProtocol().toString()))
    {
        this.jComboProtocol.setSelectedIndex(index);
    }
   
    index++;
}
Avatar billede bohbs Nybegynder
15. februar 2006 - 11:00 #4
godt at høre
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