09. maj 2000 - 14:23Der er
3 kommentarer og 1 løsning
Kalde objekt i én klasse fra en anden klasse
Hej.
Jeg har en klasse "GUI", hvor jeg har en JList, "list". Jeg har en anden klasse "Popup" hvori jeg skal bruge værdien af list.getSelectedValue. Jeg har prøvet at rode med koden længe, men kan ikke rigtigt få det til at virke.. Nogen som har en genial ide?
public String togNr; public JList list;
list = new JList(togListe); list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); list.setSelectedIndex(0); list.setVisibleRowCount(3); contentPane.add(list);
Jeg kan ikke lige få det til at fungere.. (newbie!) Jeg har prøvet at oprette en subclass af JList og indsætte funktionen der, uden held. Gider du evt. at poste et step-by-step eksempel? (Det behøver ikke at være så langt - bare så jeg kan se definitionerne.)
Du skal dog huske at en JList kan indeholde alle former for objekter. Og hvis du vil returnere en String som i kobojt's eksempel, så skal du huske at lave en eksplicit cast fra Object som getSelectedValue() returnerer, til String.
Problemet med din public JList getTogNr() er derfor at:
1) metoden skal erklæres som "public String getTogNr()" det er her at typen af returværdien defineres som en "String"
2) der skal laves en cast fra Object til String, f.eks. return (String) list.getSelectedValue();
Altså, koden ender med at se sådann ud: ------------------------------------------------ public String getTogNr() { return (String) list.getSelectedValue(); }
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.