Glavno pitanje je dal si koristio neki model kada si pravio JList ili ne.
Ako jesi onda mozes da kastujes samo u taj model. Ako pak nisi onda ti kastovanje i ne treba.
Znaci moze i bez modela. Recimo napravis listu od stringova;
Code:
String[]] items = { "item 1", "item 2", "item 3" };
JList jl = new JList(items);
A posle sadrzaj menjas sa
Code:
String items2 = {"item 1", "item 2", "item 3", "item 4", "item 5" };
jl.setListData(items2);
jl.validate();
Tu onda nemas mogucnosti dinamickog dodavanja pojedinih stavki (metodi add, remove,..)
nego uvek setujes ceo sadrzaj liste.
Ako hoces modele a nemas potrebu da pravis svoj custom model, uzmi DefaultListModel.
Listu pravis ovako
Code:
DefaultListModel model = new DefaultlistModel();
model.add("item 1");
model.add("item 2");
model.add("item 3");
JList jl = new JList(model)
a posle sadrzaj menjas (na primer dodas dva nova itema na postojece) sa
Code:
(DefaultListModel) dlm = (DefaultListModel) jl.getModel();
dlm.addElement("item 4");
dlm.addElement("item 5");