|
mirrors in mirrors in JMenu
Imagine there is a dropdown menu with several color items.
(black, white, red, blue, green and yellow)
Just one color should appear selected (no-color-selected is not a option.
I taught the next code would do it!
(but I believe there is some funny backfiring loop because resetColormenu()
will call itemStateChanged(ItemEvent evt) etc.)
There should be an other way without back looping?
public void itemStateChanged(ItemEvent evt) {
Object source = evt.getSource();
if ( blacktxt.isSelected() ) {
resetColormenu();
blacktxt.setSelected(true);
img[index].infotextcolor = "black";
}
else
if ( whitetxt.isSelected() ) {
resetColormenu();
whitetxt.setSelected(true);
img[index].infotextcolor = "white";
}
else
if ( bluetxt.isSelected() ) {
resetColormenu();
bluetxt.setSelected(true);
img[index].infotextcolor = "blue";
}
else
if ( redtxt.isSelected() ) {
resetColormenu();
redtxt.setSelected(true);
img[index].infotextcolor = "red";
}
else
if ( yellowtxt.isSelected() ) {
resetColormenu();
yellowtxt.setSelected(true);
img[index].infotextcolor = "yellow";
}
else
if ( greentxt.isSelected() ) {
resetColormenu();
greentxt.setSelected(true);
img[index].infotextcolor = "green";
}
}
private void resetColormenu() {
blacktxt.setSelected(false);
whitetxt.setSelected(false);
bluetxt.setSelected(false);
redtxt.setSelected(false);
yellowtxt.setSelected(false);
greentxt.setSelected(false);
}
|