0
Я хочу изменить фон кадра на основе выбранного переключателя. Это нужно сделать с помощью AWT. Текущий код просто меняет цвет на синий. При нажатии на зеленый ничего не меняется.AWT Radio Button
import java.awt.*;
import java.awt.event.*;
class A extends Frame implements ItemListener
{
Checkbox c1,c2;
CheckboxGroup cbg;
A()
{
setLayout(new FlowLayout());
cbg= new CheckboxGroup();
c1= new Checkbox("Blue",cbg,false);
c2= new Checkbox("Green",cbg,true);
this.add(c1);
this.add(c2);
c1.addItemListener(this);
c2.addItemListener(this);
}
public void itemStateChanged(ItemEvent e)
{
if(e.getStateChange()==ItemEvent.SELECTED)
this.setBackground(Color.BLUE);
else if(e.getStateChange()==ItemEvent.SELECTED)
this.setBackground(Color.Green);
else
this.setBackground(Color.BLACK);
}
public static void main(String[] args)
{
A a= new A();
a.setSize(500,500);
a.setTitle("ME");
a.setVisible(true);
a.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent we){System.exit(0);}
});
}
}
* «Это должно быть сделано с использованием AWT.» * .. Почему? –
'this.setBackground (Color.Green);' должен быть либо 'this.setBackground (Color.GREEN);' *** или *** (для поддержки JRE до 1.4.2) 'this.setBackground (Цвет. зеленый); '. Вы используете Eclipse и игнорируете предупреждения компилятора? –