Iron
Iron

Reputation: 49

how to afect jlabel by changing different combobox values

I'm having some trouble using two comboboxes to affect the state of one item. Each combo box has a value between 1 and 99, I'm trying to change the values in each, combine them, then display this value on a jlabel. So far I can only the first combobox seems to impact the formula. I have simplified it to the following and thanks for any help :)

private int value1int, value2int;

    value1.addItemListener(new ItemListener() 
    {
        public void itemStateChanged(ItemEvent ex) 
        {
            if (ex.getStateChange() == ItemEvent.SELECTED) 
            {
                // assume single selection
                int value1int = (Integer)ex.getItemSelectable().getSelectedObjects()[0];
            }
        }
    });

    value2.addItemListener(new ItemListener() 
    {
        public void itemStateChanged(ItemEvent exs) 
        {
            if (exs.getStateChange() == ItemEvent.SELECTED) 
            {
                // assume single selection
                int value2int = (Integer)exs.getItemSelectable().getSelectedObjects()[0];
            }
        }
    });


    overallValue2.setText((Integer.toString(value1int + value2int)));
    overallValue2.revalidate();

Upvotes: 0

Views: 406

Answers (1)

guisantogui
guisantogui

Reputation: 4116

you have to do something like that:

public class GUI extends JFrame ...

private int labelVal;

...


// combobox events - The same code to both comboboxes must works

public void itemStateChanged(ItemEvent exs) 
{
   if (exs.getStateChange() == ItemEvent.SELECTED) 
   {
       // assume single selection
       int aux = (Integer)combobox1.getSelectedItem()+(Integer)combobox2.getSelectedItem();
       int labelVal= aux;
   }
}

Them refresh the screen

Upvotes: 1

Related Questions