Java开发GUI之选择列表
选择列表在多个选项供用户进行选择的场景中使用广泛。其使用也非常简单,Java的awt包中提供了Choice控件,示例代码如下:
public static Label label = new Label(); static void choseTest(){ Frame frame = new Frame("BUTTON"); Panel pannel = new Panel(); //创建选择列表 Choice choice = new Choice(); //添加选项 choice.add("鸣人"); choice.addItem("佐助"); choice.insert("卡卡西", 0); //添加用户选择改变的监听 choice.addItemListener(new MyItemListener()); pannel.add(choice); label.setText(choice.getSelectedItem()+"一定可以成为最NB的火影!"); pannel.add(label); frame.add(pannel); frame.pack(); frame.show(); }
MyItemListener类实现如下:
class MyItemListener implements ItemListener{ @Override public void itemStateChanged(ItemEvent e) { // TODO Auto-generated method stub if (e.getSource().getClass()==Choice.class) { ButtonTest.label.setText(e.getItem()+"一定可以成为最NB的火影!"); }else{ System.out.println(((Checkbox)e.getSource()).getState()); } } }
运行效果如下:
Choice类解析如下:
//获取选项个数public int getItemCount();//获取某个选项public String getItem(int index);//追加一个选项public void add(String item);public void addItem(String item);//插入一个选项public void insert(String item, int index);//通过标题删除一个选项public void remove(String item);//通过位置删除一个选项public void remove(int position);//删除所有选项public void removeAll();//获取当前选中的选项标题public synchronized String getSelectedItem();//获取当前选中的选项位置public int getSelectedIndex();//用代码选中某个位置的选项public synchronized void select(int pos);//用代码选中某个标题的选项public synchronized void select(String str);//添加用户选择监听public synchronized void addItemListener(ItemListener l);//移除监听public synchronized void removeItemListener(ItemListener l);//获取所有监听对象public synchronized ItemListener[] getItemListeners();publicT[] getListeners(Class listenerType);