1、复选框

1.1 java.awt.ItemSelectable接口

实现 ItemSelectable接口的类具有零个或多个可被选定的项目。

实现 ltemSelectable接口的类激发item事件,并实现项目监听者注册方法。在 ltemListener接口中,定义了一个方法: void itemStateChanged ( ltemEvent)。只要ltemSelectable中的项目发生改变,就向当前所有已经注册的项目监听者激发项目事件。

方法:

void addItemListener(ItemListener l) //添加侦听器以在用户更改项目状态时接收项目事件。  
Object[] getSelectedObjects() //如果未选择任何项目,则返回所选项目或 null 。  
void removeItemListener(ItemListener l) //删除项侦听器。
1.2 java.awt.Checkbox

复选框是表示逻辑状态的构件。

无论什么时候,只要复选框被选中或取消选中,复选框就激发项目事件。

为了对选中或取消选中做出反应,向复选框添加一个项目监听者。当复选框激发项目事件时,调用项目监听者的itenStateChanged方法,并向此方法传递lItemEvent实例。

既然复选框经常存在于互相排斥的组中,它们可以添加到java.awt.CheckboxGroup中。

java.awt. CheckboxGroup确保在任何给定的时间里,组中只有一个复选框被选中。

注意CheckboxGroup不是构件,因此不能被添加到容器中。结果,无论是否向复选框组添加复选框,都必须单独地向复选框存在的容器添加复选框。
一般情况下,复选框使用在下面两种环境中:一组复选框相互之间相容,或一组复选框之间相互排斥。

构造方法:

Checkbox() //创建一个复选框,其标签为空字符串。  
Checkbox(String label) //创建具有指定标签的复选框。  
Checkbox(String label, boolean state) //创建具有指定标签的复选框并设置指定的状态。  
Checkbox(String label, boolean state, CheckboxGroup group) //构造具有指定标签,设置为指定状态和指定复选框组的复选框。  
Checkbox(String label, CheckboxGroup group, boolean state) //在指定的复选框组中创建具有指定标签的复选框,并将其设置为指定的状态。

2、选择框和列表

选择框和列表都显示选定的字符串列表。但是列表支持多项选择,而选择框只允许选定其一个项目。列表一般用来显示一个或多个项目;而选择框在被激活以前只显示选定的项目,在激活时为了选择,可以看见项目的下拉式菜单。

2.1 使用场景选择

选择框和列表之间的互换使用是很常见的。在特定的情形下,使用列表还是选择框,可以依据下面的条件来判定:

  • 可利用的屏幕空间。
  • 是否希望在所有时间显示多个项目。
  • 是否需要多项选择。
  • 如果同时需要显示多个项目或进行多项选择,则列表是可行的方法。
  • 如果屏幕可用空间较少并且只需要一个选项,那么最好使用选择框。
2.2 java.awt.Choice

构造方法:

Choice() 创建一个新的选择菜单。

方法:

void add(String item) //将项添加到此 Choice菜单。  
void addItem(String item) //从Java 2平台v1.1开始已过时。  
void addItemListener(ItemListener l) //添加指定的项侦听器以从此 Choice菜单接收项事件。  
void addNotify() //创建 Choice的同行。  
int countItems() //已过时。 截至JDK 1.1版,由getItemCount()取代。  
AccessibleContext getAccessibleContext() //获取 AccessibleContext与此相关 Choice 。  
String getItem(int index) //获取此 Choice菜单中指定索引处的字符串。  
int getItemCount() //返回此 Choice菜单中的项目数。  
ItemListener[] getItemListeners() //返回在此选项上注册的所有项侦听器的数组。  
<T extends EventListener>
T[] getListeners(类<T> listenerType) //在此 Choice返回当前注册为 FooListener s的所有对象的数组。 
int getSelectedIndex() //返回当前所选项的索引。  
String getSelectedItem() //获取当前选择的字符串表示形式。  
Object[] getSelectedObjects() //返回包含当前所选项的数组(长度为1)。  
void insert(String item, int index) //在指定位置将项目插入此选项。  
protected String paramString() //返回表示此 Choice菜单状态的字符串。  
protected void processEvent(AWTEvent e) //处理此选择的事件。  
protected void processItemEven(ItemEvent e) //处理此 Choice菜单上发生的项目事件, Choice是将它们分派给任何已注册的 ItemListener对象。  
void remove(int position) //从指定位置的选择菜单中删除项目。  
void remove(String item) //从 Choice菜单中删除第一次出现的 item 。  
void removeAll() //从选择菜单中删除所有项目。  
void removeItemListener(ItemListener l) //删除指定的项侦听器,以便它不再从此 Choice菜单接收项事件。  
void select(int pos) //将此 Choice菜单中的选定项目设置为指定位置的项目。  
void select(String str) //将此 Choice菜单中的所选项目设置为名称等于指定字符串的项目。
2.3 java.awt.List

构造方法:

List() //创建一个新的滚动列表。  
List(int rows) //创建使用指定数量的可见行初始化的新滚动列表。  
List(int rows, boolean multipleMode) //创建一个初始化的新滚动列表,以显示指定的行数。

方法:

void add(String item) 将指定的项添加到滚动列表的末尾。  
void add(String item, int index) 将指定的项添加到索引指示的位置的滚动列表中。  
void addActionListener(ActionListener l) 添加指定的操作侦听器以从此列表接收操作事件。  
void addItem(String item) 已过时。 
由add(String)取代。  
void addItem(String item, int index) 已过时。 
由add(String, int)取代。  
void addItemListener(ItemListener l) 添加指定的项侦听器以从此列表接收项事件。  
void addNotify() 创建列表的对等方。  
boolean allowsMultipleSelections() 已过时。 
截至JDK 1.1版,由isMultipleMode()取代。  
void clear() 已过时。 
截至JDK 1.1版,由removeAll()取代。  
int countItems() 已过时。 
截至JDK 1.1版,由getItemCount()取代。  
void delItem(int position) 已过时。 
由remove(String)和remove(int)取代。  
void delItems(int start, int end) 已过时。 
从JDK 1.1版开始,未来不会公开使用。  
void deselect(int index) 取消选择指定索引处的项目。  
AccessibleContext getAccessibleContext() 获取与 AccessibleContext相关的 List 。  
ActionListener[] getActionListeners() 返回在此列表中注册的所有动作侦听器的数组。  
String getItem(int index) 获取与指定索引关联的项。  
int getItemCount() 获取列表中的项目数。  
ItemListener[] getItemListeners() 返回在此列表中注册的所有项侦听器的数组。  
String[] getItems() 获取列表中的项目。  
<T extends EventListener>
T[] getListeners(类<T> listenerType) 返回当前注册的所有对象的数组 FooListener在这个S List 。  
Dimension getMinimumSize() 确定此滚动列表的最小大小。  
Dimension getMinimumSize(int rows) 获取具有指定行数的列表的最小尺寸。  
Dimension getPreferredSize() 获取此滚动列表的首选大小。  
Dimension getPreferredSize(int rows) 获取具有指定行数的列表的首选维度。  
int getRows() 获取此列表中可见行的数量。  
int getSelectedIndex() 获取列表中所选项的索引,  
int[] getSelectedIndexes() 获取列表中的选定索引。  
String getSelectedItem() 获取此滚动列表中的选定项。  
String[] getSelectedItems() 获取此滚动列表中的选定项。  
Object[] getSelectedObjects() 获取对象数组中此滚动列表中的选定项。  
int getVisibleIndex() 获取方法 makeVisible最后可见的项的索引。  
boolean isIndexSelected(int index) 确定是否选择了此滚动列表中的指定项。  
boolean isMultipleMode() 确定此列表是否允许多个选择。  
boolean isSelected(int index) 已过时。 
截至JDK 1.1版,由isIndexSelected(int)取代。  
void makeVisible(int index) 使指定索引处的项目可见。  
Dimension minimumSize() 已过时。 
截至JDK 1.1版,由getMinimumSize()取代。  
Dimension minimumSize(int rows) 已过时。 
截至JDK 1.1版,由getMinimumSize(int)取代。  
protected String paramString() 返回表示此滚动列表状态的参数字符串。  
Dimension preferredSize() 已过时。 
截至JDK 1.1版,由getPreferredSize()取代。  
Dimension preferredSize(int rows) 已过时。 
截至JDK 1.1版,由getPreferredSize(int)取代。  
protected void processActionEvent(ActionEvent e) 处理在此组件上发生的操作事件,方法是将它们分派给任何已注册的 ActionListener对象。  
protected void processEvent(AWTEvent e) 处理此滚动列表上的事件。  
protected void processItemEvent(ItemEvent e) 处理此列表上发生的项目事件,方法是将它们分派给任何已注册的 ItemListener对象。  
void remove(int position) 从此滚动列表中删除指定位置的项目。  
void remove(String item) 从列表中删除第一个项目。  
void removeActionListener(ActionListener l) 删除指定的操作侦听器,以便它不再从此列表中接收操作事件。  
void removeAll() 从此列表中删除所有项目。  
void removeItemListener(ItemListener l) 删除指定的项侦听器,以便它不再从此列表中接收项事件。  
void removeNotify() 删除此列表的对等项。  
void replaceItem(String newValue, int index) 使用新字符串替换滚动列表中指定索引处的项目。  
void select(int index) 选择滚动列表中指定索引处的项目。  
void setMultipleMode(boolean b) 设置标志以确定此列表是否允许多个选择。  
void setMultipleSelections(boolean b) 已过时。 
截至JDK 1.1版,由setMultipleMode(boolean)取代。