| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.awt.Component
java.awt.List
public class List
List 组件为用户提供了一个可滚动的文本项列表。可设置此 list,使其允许用户进行单项或多项选择。 
 
例如以下代码:
 List lst = new List(4, false);
 lst.add("Mercury");
 lst.add("Venus");
 lst.add("Earth");
 lst.add("JavaSoft");
 lst.add("Mars");
 lst.add("Jupiter");
 lst.add("Saturn");
 lst.add("Uranus");
 lst.add("Neptune");
 lst.add("Pluto");
 cnt.add(lst);
 
当 cnt 为容器时,将生成以下滚动列表:
 
 
 
如果 List 允许进行多项选择,则单击已选中的项时,将取消选中该项。在上面的示例中,一次只能从滚动列表中选择一项,因为创建新的滚动列表时,第二个参数为 false。如果 List 不允许进行多项选择,则选择某一项会导致其他选中的项取消选中。
 
注意,本示例中显示的列表是用四个可视行创建的。创建该列表之后,不可更改可视行的数量。默认的 List 是用四行创建的,所以 lst = new List() 与 list = new List(4, false) 等效。
 
从 Java 1.1 开始,AWT(Abstract Window Toolkit,抽象窗口工具包)会把列表上发生的所有鼠标、键盘和焦点事件发送给 List 对象。(维护旧的 AWT 事件模型的目的是为了向后兼容,不推荐使用它。)
 
当用户选中或取消选中某项时,AWT 将向列表发送一个 ItemEvent 实例。当用户双击滚动列表中的某一项时,AWT 会在紧随项事件后向列表发送一个 ActionEvent 实例。当用户选中列表中的某项,按下 return 键时,AWT 也会生成一个动作事件。
 
如果应用程序需要基于此列表中用户选中或激活的项执行某个动作,则应该相应地实现 ItemListener 或 ActionListener,并注册新的侦听器,以便在此列表中接收事件。
 
对于多项选择滚动列表,使用外部动作(如单击按钮)来触发动作被认为是一种更好的用户界面。
ItemEvent, 
ItemListener, 
ActionEvent, 
ActionListener, 
序列化表格| 嵌套类摘要 | |
|---|---|
| protected  class | List.AccessibleAWTList此类实现 List类的可访问性支持。 | 
| 从类 java.awt.Component 继承的嵌套类/接口 | 
|---|
| Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy | 
| 字段摘要 | 
|---|
| 从类 java.awt.Component 继承的字段 | 
|---|
| BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT | 
| 从接口 java.awt.image.ImageObserver 继承的字段 | 
|---|
| ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH | 
| 构造方法摘要 | |
|---|---|
| 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 version 1.1 开始,由 isMultipleMode()取代。 | |
|  void | clear()已过时。 从 JDK version 1.1 开始,由 removeAll()取代。 | |
|  int | countItems()已过时。 从 JDK version 1.1 开始,由 getItemCount()取代。 | |
|  void | delItem(int position)已过时。 由 remove(String)和remove(int)取代。 | |
|  void | delItems(int start,
         int end)已过时。 从 JDK version 1.1 开始,后来不再公开使用。只希望作为包私有方法时保留此方法。 | |
|  void | deselect(int index)取消选择指定索引处的项。 | |
|  AccessibleContext | getAccessibleContext()获取与此 List关联的AccessibleContext。 | |
|  ActionListener[] | getActionListeners()返回已在此列表上注册的所有动作侦听器的数组。 | |
|  String | getItem(int index)获取与指定索引关联的项。 | |
|  int | getItemCount()获取列表中的项数。 | |
|  ItemListener[] | getItemListeners()返回已在此列表上注册的所有项侦听器的数组。 | |
|  String[] | getItems()获取列表中的项。 | |
| 
 | getListeners(Class<T> listenerType)返回目前已在此 List上注册为FooListener的所有对象的数组。 | |
|  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 version 1.1 开始,由 isIndexSelected(int)取代。 | |
|  void | makeVisible(int index)使指定索引处的项可视。 | |
|  Dimension | minimumSize()已过时。 从 JDK version 1.1 开始,由 getMinimumSize()取代。 | |
|  Dimension | minimumSize(int rows)已过时。 从 JDK version 1.1 开始,由 getMinimumSize(int)取代。 | |
| protected  String | paramString()返回表示此滚动列表状态的参数字符串。 | |
|  Dimension | preferredSize()已过时。 从 JDK version 1.1 开始,由 getPreferredSize()取代。 | |
|  Dimension | preferredSize(int rows)已过时。 从 JDK version 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 version 1.1 开始,由 setMultipleMode(boolean)取代。 | |
| 从类 java.lang.Object 继承的方法 | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | 
| 构造方法详细信息 | 
|---|
public List()
     throws HeadlessException
List(0, false) 的一种便捷方法。还要注意,列表中的可视行数一旦创建就不能更改。
HeadlessException - 如果为 GraphicsEnvironment.isHeadless(),则返回 true。GraphicsEnvironment.isHeadless()
public List(int rows)
     throws HeadlessException
List(rows, false) 的一种便捷方法。还要注意,列表中的可视行数一旦创建就不能更改。
rows - 要显示的项数。
HeadlessException - 如果为 GraphicsEnvironment.isHeadless(),则返回 true。GraphicsEnvironment.isHeadless()
public List(int rows,
            boolean multipleMode)
     throws HeadlessException
multipleMode 的值为 true,则用户可从列表中选择多项。如果为 false,则一次只能选择一项。
rows - 要显示的项数。multipleMode - 如果为 true,则允许进行多项选择;否则,一次只能选择一项。
HeadlessException - 如果为 GraphicsEnvironment.isHeadless(),则返回 true。GraphicsEnvironment.isHeadless()| 方法详细信息 | 
|---|
public void addNotify()
Component 中的 addNotifyComponent.isDisplayable(), 
Component.removeNotify()public void removeNotify()
Component 中的 removeNotifyComponent.isDisplayable(), 
Component.addNotify()public int getItemCount()
getItem(int)@Deprecated public int countItems()
getItemCount() 取代。
public String getItem(int index)
index - 项的位置
getItemCount()public String[] getItems()
select(int), 
deselect(int), 
isIndexSelected(int)public void add(String item)
item - 要添加的项@Deprecated public void addItem(String item)
add(String) 取代。
public void add(String item,
                int index)
item - 要添加的项;如果此参数为 null,则该项被视为空字符串 ""index - 添加项的位置
@Deprecated
public void addItem(String item,
                               int index)
add(String, int) 取代。
public void replaceItem(String newValue,
                        int index)
newValue - 一个替换现有项的新字符串index - 要替换项的位置
ArrayIndexOutOfBoundsException - 如果 index 超出范围。public void removeAll()
remove(java.lang.String), 
delItems(int, int)@Deprecated public void clear()
removeAll() 取代。
public void remove(String item)
item - 从列表中移除的项
IllegalArgumentException - 如果列表中不存在该项public void remove(int position)
position - 要删除项的索引
ArrayIndexOutOfBoundsException - 如果 position 小于零或大于 getItemCount()-1add(String, int)@Deprecated public void delItem(int position)
remove(String) 和 remove(int) 取代。
public int getSelectedIndex()
-1。select(int), 
deselect(int), 
isIndexSelected(int)public int[] getSelectedIndexes()
select(int), 
deselect(int), 
isIndexSelected(int)public String getSelectedItem()
null。select(int), 
deselect(int), 
isIndexSelected(int)public String[] getSelectedItems()
select(int), 
deselect(int), 
isIndexSelected(int)public Object[] getSelectedObjects()
ItemSelectable 中的 getSelectedObjectsObject 数组;如果没有选中的项,则会返回一个零长度的数组。getSelectedItems(), 
ItemSelectablepublic void select(int index)
注意,超出参数范围是无效的,并且将导致未指定的行为。
注意,此方法应主要用于初始选择此组件中的项。以编程方式调用此方法不 会触发 ItemEvent。触发 ItemEvent 的唯一方式是通过用户交互。
index - 要选择的项位置getSelectedItem(), 
deselect(int), 
isIndexSelected(int)public void deselect(int index)
注意,超出参数范围是无效的,并且将导致未指定的行为。
如果指定索引处的项未选中,则忽略操作。
index - 要取消选择项的位置select(int), 
getSelectedItem(), 
isIndexSelected(int)public boolean isIndexSelected(int index)
index - 要检查的项
true;否则返回 falseselect(int), 
deselect(int)@Deprecated public boolean isSelected(int index)
isIndexSelected(int) 取代。
public int getRows()
List 创建,行数将永远不变。
public boolean isMultipleMode()
true;否则返回 falsesetMultipleMode(boolean)@Deprecated public boolean allowsMultipleSelections()
isMultipleMode() 取代。
public void setMultipleMode(boolean b)
b - 如果为 true,则允许进行多项选择;否则,只能一次从列表中选择一项。isMultipleMode()@Deprecated public void setMultipleSelections(boolean b)
setMultipleMode(boolean) 取代。
public int getVisibleIndex()
makeVisible 方法使其可视的项的索引。
makeVisible(int)public void makeVisible(int index)
index - 项的位置getVisibleIndex()public Dimension getPreferredSize(int rows)
rows - 列表的行数
Component.getPreferredSize()@Deprecated public Dimension preferredSize(int rows)
getPreferredSize(int) 取代。
public Dimension getPreferredSize()
Component 中的 getPreferredSizeComponent.getPreferredSize()@Deprecated public Dimension preferredSize()
getPreferredSize() 取代。
Component 中的 preferredSizepublic Dimension getMinimumSize(int rows)
rows - 列表的行数
Component.getMinimumSize()@Deprecated public Dimension minimumSize(int rows)
getMinimumSize(int) 取代。
public Dimension getMinimumSize()
Component 中的 getMinimumSizeComponent.getMinimumSize()@Deprecated public Dimension minimumSize()
getMinimumSize() 取代。
Component 中的 minimumSizepublic void addItemListener(ItemListener l)
select 或 deselect 的调用。如果侦听器 l 为 null,则不会抛出异常,并且不执行动作。
有关 AWT 的线程模型的详细信息,请参阅 AWT 线程问题。
ItemSelectable 中的 addItemListenerl - 项侦听器removeItemListener(java.awt.event.ItemListener), 
getItemListeners(), 
select(int), 
deselect(int), 
ItemEvent, 
ItemListenerpublic void removeItemListener(ItemListener l)
l 为 null,则不会抛出异常,并且不执行动作。
有关 AWT 的线程模型的详细信息,请参阅 AWT 线程问题。
ItemSelectable 中的 removeItemListenerl - 项侦听器addItemListener(java.awt.event.ItemListener), 
getItemListeners(), 
ItemEvent, 
ItemListenerpublic ItemListener[] getItemListeners()
ItemListener,如果当前没有已注册的项侦听器,则返回一个空数组。addItemListener(java.awt.event.ItemListener), 
removeItemListener(java.awt.event.ItemListener), 
ItemEvent, 
ItemListenerpublic void addActionListener(ActionListener l)
如果侦听器 l 为 null,则不会抛出异常,并且不执行动作。
有关 AWT 的线程模型的详细信息,请参阅 AWT 线程问题。
l - 动作侦听器removeActionListener(java.awt.event.ActionListener), 
getActionListeners(), 
ActionEvent, 
ActionListenerpublic void removeActionListener(ActionListener l)
l 为 null,则不会抛出异常,并且不执行动作。
有关 AWT 的线程模型的详细信息,请参阅 AWT 线程问题。
l - 动作侦听器addActionListener(java.awt.event.ActionListener), 
getActionListeners(), 
ActionEvent, 
ActionListenerpublic ActionListener[] getActionListeners()
ActionListener,如果当前没有已注册的动作侦听器,则返回一个空数组。addActionListener(java.awt.event.ActionListener), 
removeActionListener(java.awt.event.ActionListener), 
ActionEvent, 
ActionListenerpublic <T extends EventListener> T[] getListeners(Class<T> listenerType)
List 上注册为 FooListener 的所有对象的数组。FooListener 是用 addFooListener 方法注册的。
 
可以使用 class 字面值来指定 listenerType 参数,如 FooListener.class。例如,可以查询其项侦听器具有以下代码的 List l:
 
ItemListener[] ils = (ItemListener[])(l.getListeners(ItemListener.class));如果不存在这样的侦听器,则此方法将返回一个空数组。
Component 中的 getListenerslistenerType - 请求的侦听器类型;此参数应该指定一个从 java.util.EventListener 遗传下来的接口
FooListener 的所有对象的数组
ClassCastException - 如果 listenerType 未指定实现 java.util.EventListener 的类或接口。getItemListeners()protected void processEvent(AWTEvent e)
ItemEvent 的一个实例,则该事件将调用 processItemEvent 方法。另外,如果事件是 ActionEvent 的一个实例,则它将调用 processActionEvent。如果事件不是一个项事件或动作事件,则它将调用超类的 processEvent。
注意,如果事件参数为 null,则行为未指定,并可能抛出异常。
Component 中的 processEvente - 事件ActionEvent, 
ItemEvent, 
processActionEvent(java.awt.event.ActionEvent), 
processItemEvent(java.awt.event.ItemEvent)protected void processItemEvent(ItemEvent e)
ItemListener 对象。
 除非此组件启用了项事件,才会调用此方法。当出现以下情况时,将启用项事件:
ItemListener 对象通过 addItemListener 注册。
enableEvents 启用。
注意,如果事件参数为 null,则行为未指定,并可能抛出异常。
e - 项事件ItemEvent, 
ItemListener, 
addItemListener(java.awt.event.ItemListener), 
Component.enableEvents(long)protected void processActionEvent(ActionEvent e)
ActionListener 对象。
 除非此组件启用了动作事件,才会调用此方法。当出现以下情况时,将启用动作事件:
ActionListener 对象通过 addActionListener 注册。
enableEvents 启用。
 注意,如果事件参数为 null,则行为未指定,并可能导致一个异常。
e - 动作事件ActionEvent, 
ActionListener, 
addActionListener(java.awt.event.ActionListener), 
Component.enableEvents(long)protected String paramString()
Component 中的 paramString
@Deprecated
public void delItems(int start,
                                int end)
public AccessibleContext getAccessibleContext()
List 关联的 AccessibleContext。对于列表,AccessibleContext 采用 AccessibleAWTList 的形式。如有必要,可以创建一个新的 AccessibleAWTList 实例。
Accessible 中的 getAccessibleContextComponent 中的 getAccessibleContextAccessibleAWTList,它将充当此 List 的 AccessibleContext。| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。