JavaSE 项目事件类(ItemEvent)

{相关信息}
项目事件类(ItemEvent)是指某一个项目被选定、取消的语义事件。选择 CheckBox、ComboBox、List 、Choice等组件的时候将产生项目事件。使用项目事件必须给组件添加一个实现ItemListener 接口的事件处理器,该接口的方法如下:
void itemStateChange(ItemEvent e)

{具体实例描述}
功能描述,每选中一个项目便在文本区显示相关信息,如下:

JavaSE 项目事件类(ItemEvent)

 

{具体实例代码}

package sup.orange.learn;



import java.awt.*;

import java.awt.event.ItemEvent;

import java.awt.event.ItemListener;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;



/**

 * Created by re-x on 10/30/14.

 */

public class ItemEventDemo extends Frame implements ItemListener{



    List list;

    Checkbox checkbox1, checkbox2, checkbox3;

    Choice colorChooser;

    TextArea textarea;





    public ItemEventDemo() {

        super();

        init();

    }



    public static void main(String[] args) {

        new ItemEventDemo();

    }



    public void init() {



        setLayout(new GridLayout(4, 1));

        textarea = new TextArea();

        add(textarea);



        list = new List(4, false);

        list.add("Chinese");

        list.add("math");

        list.add("English");

        list.add("physics");

        list.add("chemistry");

        list.add("history");

        list.add("geography");

        add(list);



        list.addItemListener(this);



        Panel panel = new Panel();

        CheckboxGroup cbg = new CheckboxGroup();



        checkbox1 = new Checkbox("one", cbg, true);

        checkbox1.addItemListener(this);

        panel.add(checkbox1);

        checkbox2 = new Checkbox("two", cbg, false);

        checkbox2.addItemListener(this);

        panel.add(checkbox2);

        checkbox3 = new Checkbox("three", cbg, true);

        checkbox3.addItemListener(this);

        panel.add(checkbox3);

        add(panel);



        colorChooser = new Choice();

        colorChooser.add("red");

        colorChooser.add("green");

        colorChooser.add("black");

        colorChooser.addItemListener(this);

        add(colorChooser);



        addWindowListener(new WindowAdapter() {

            @Override

            public void windowClosing(WindowEvent e) {

                super.windowClosing(e);

                dispose();

                System.exit(0);

            }

        });



        setSize(300, 500);

        setVisible(true);

    }



    public void itemStateChanged(ItemEvent e) {

        if (e.getSource() == list) {

            textarea.setText(list.getSelectedItem());

        }

        else if (e.getSource() == checkbox1) {

            textarea.setText(checkbox1.getLabel());

        }

        else if (e.getSource() == checkbox2) {

            textarea.setText(checkbox2.getLabel());

        }

        else if (e.getSource() == checkbox3) {

            textarea.setText(checkbox3.getLabel());

        }

        else if (e.getSource() == colorChooser) {

            textarea.setText(colorChooser.getSelectedItem());

        }

    }

}

 

你可能感兴趣的:(JavaSE)