javaGUI学习25:AWT-项目选择:复选框,选择框和列表

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)取代。 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值