java - Create JLabel Array -


i have 34 labels images can't figure how make when ill click label selected , in down right corner "selected: " changed on every label select.

34 labels

the labels variable names n1 n34 have code far in list getselectednumbers()

list<jlabel> lotteryboxes = new arraylist<>();  list<jlabel> getselectednumbers() {     list<jlabel> numbers = new arraylist<>();     iterator<jlabel> = lotteryboxes.iterator();     while (it.hasnext()) {         jlabel nr = it.next();         if (nr.iscursorset()) {             numbers.add(nr);             selected.settext("selected: " + nr);         }         return numbers;     } 

i not know do, please give me answers.

if create labels in loop, can add handler them. either same handler checks of labels clicked, or separate handler each one.

here there separate handler each , labels put array can use them later (outside loop).

int numberoflabels = 34; jlabel[] labels = new jlabel[numberoflabels]; (int index=0; index<numberoflabels; index++) {     string labeltext = "" + (index + 1);     final jlabel label = new jlabel(labeltext));     final int labelnumber = index + 1;     label.addmouselistener(new mouseadapter() {         public void mouseclicked(mouseevent e) {             // something, can use "label" in here, eg:             selected.settext(label.gettext());             // have access number in "labelnumber"         }     });     somepanel.add(label);     labels[index] = label; // save label if need access later } 

Comments

Popular posts from this blog

ruby on rails - RuntimeError: Circular dependency detected while autoloading constant - ActiveAdmin.register Role -

c++ - OpenMP unpredictable overhead -

javascript - Wordpress slider, not displayed 100% width -