java - JList item deselected after clicking a JButton -
java - JList item deselected after clicking a JButton -
what tried select item jlist
, click jbutton
(optionally click jradiobutton
), , value of selected item added jlist
.
the problem after clicked jbutton
or jradiobutton
, item in original jlist
deselected, , added destination jlist
"null".
first jlists. items specified selection jcombobox, , generate values arraylist in class.
@override public void actionperformed(actionevent e) { // todo auto-generated method stub channellist cl = new channellist(); cl.createlist(); //determine jlist jcombobox selecton string genre = (string)c.getselecteditem(); switch(genre){ case "please select genre of channel": vt1.clear(); lchannels.setlistdata(vt1); break; case "all genres": vt1.clear(); for(int =0; < cl.chlist.length; i++){ char chgenre = cl.chlist[i].getchgenre(); vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } break; case "entertainment": vt1.clear(); for(int =0; < cl.chlist.length; i++){ char chgenre = cl.chlist[i].getchgenre(); if(chgenre == 'e'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } } break; case "movie": vt1.clear(); for(int =0; < cl.chlist.length; i++){ char chgenre = cl.chlist[i].getchgenre(); if(chgenre == 'm'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } } break; case "news/business": vt1.clear(); for(int =0; < cl.chlist.length; i++){ char chgenre = cl.chlist[i].getchgenre(); if(chgenre == 'n'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } } break; case "sci-fi": vt1.clear(); for(int =0; < cl.chlist.length; i++){ char chgenre = cl.chlist[i].getchgenre(); if(chgenre == 's'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } } break; case "sports": vt1.clear(); for(int =0; < cl.chlist.length; i++){ char chgenre = cl.chlist[i].getchgenre(); if(chgenre == 't'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } } break; } }
the problem solved, changed logic of retrieving values.
@override public void actionperformed(actionevent e) { // todo auto-generated method stub channellist cl = new channellist(); cl.createlist(); //determine jlist jcombobox selecton genre = c.getselecteditem().tostring(); if(e.getsource() == c){ vt1.clear(); for(int =0; < cl.chlist.length; i++){ char chgenre = cl.chlist[i].getchgenre(); switch(genre){ case "please select genre of channel": lchannels.setlistdata(vt1); break; case "all genres": vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); break; case "entertainment": if(chgenre == 'e'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } break; case "movie": if(chgenre == 'm'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } break; case "news/business": if(chgenre == 'n'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } break; case "sci-fi": if(chgenre == 's'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } break; case "sports": if(chgenre == 't'){ vt1.add(cl.chlist[i].getchtitle()); lchannels.setlistdata(vt1); } break; } } } }
java swing jbutton jlist japplet
Comments
Post a Comment