List类

所在包:java.awt .List

所有已实现的接口:ImageObserver,  ItemSelectable,  MenuContainer,  Serializable,  Accessible

 


 

public class List 
extends Component
implements ItemSelectable, Accessible

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是容器,生成以下滚动列表:

 

如果列表允许多个选择,则单击已选择的项目将取消选择。 在上述示例中,一次只能选择滚动列表中的一个项目,因为创建新的滚动列表时的第二个参数是false 。如果列表不允许多个选择,则选择一个项目将导致任何其他所选项目被取消选择。

请注意,所示示例中的列表是使用四个可见行创建的。 创建列表后,无法更改可见行数。 创建一个默认的List四行,以便lst = new List()相当于list = new List(4, false)

从Java 1.1开始,抽象窗口工具包发送List对象上的所有鼠标,键盘和焦点事件。 (旧的AWT事件模型只保留向后兼容性,不鼓励使用它。)
当用户选择或取消选择项目时,AWT会向列表发送一个ItemEvent的实例。 当用户双击滚动列表中的项目时,AWT会在项目事件ActionEvent向列表发送一个ActionEvent的实例。 当用户按下返回键时,AWT还会生成一个动作事件,同时选择列表中的一个项目。

如果应用程序想要根据用户选择或激活的此列表中的项目执行某些操作,则应根据需要实施ItemListenerActionListener ,并注册新的监听器以从此列表接收事件。

对于多选滚动列表,它被认为是使用外部手势(例如单击按钮)来触发动作的更好的用户界面。

另请参见:
ItemEventItemListenerActionEventActionListenerSerialized Form

 


 

构造方法摘要
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()
          获取列表中的项。
<T extends EventListener>
T[]
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) 取代。

 

 


Methods inherited from class java.awt.Component(以下方法继承自java.awt.Component类)

action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, postEvent, prepareImage, prepareImage, print, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate

 

Methods inherited from class java.lang.Object(以下方法继承自java.lang.Object类)

 

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait


 

构造方法详细信息

  • List

    public List()
         throws HeadlessException
    创建一个新的滚动列表。 默认情况下,有四条可见行,不允许多个选择。 请注意,这是一个方便的方法List(0, false) 。 另请注意,列表中的可见行数在创建后不能更改。
    异常
    HeadlessException - 如果GraphicsEnvironment.isHeadless()返回true。
    另请参见:
    GraphicsEnvironment.isHeadless()

 

  • List

    public List(int rows)
         throws HeadlessException
    创建一个以指定数量的可见行初始化的新滚动列表。 默认情况下,不允许多个选择。 请注意,这是一个方便的方法List(rows, false) 。 还要注意,列表中可见行的数量在创建后不能更改。
    参数
    rows - 要显示的项目数。
    异常
    HeadlessException - 如果GraphicsEnvironment.isHeadless()返回true。
    从以下版本开始:
    JDK1.1
    另请参见:
    GraphicsEnvironment.isHeadless()
  • List

    public List(int rows,
                boolean multipleMode)
         throws HeadlessException
    创建一个初始化的新滚动列表,以显示指定的行数。 请注意,如果指定了零行,则将创建列表,其默认值为四行。 还要注意,列表中可见行的数量在创建后不能更改。 如果multipleMode值为true ,则用户可以从列表中选择多个项目。 如果是false ,则一次只能选择一个项目。
    参数
    rows - 要显示的项目数。
    multipleMode - 如果true ,则允许多个选择; 否则,一次只能选择一个项目。
    异常
    HeadlessException - 如果GraphicsEnvironment.isHeadless()返回true。
    另请参见:
    GraphicsEnvironment.isHeadless()

方法详细信息

  • getItemCount

    public int getItemCount()
    获取列表中的项目数。
    结果
    列表中的项目数
    从以下版本开始:
    JDK1.1
    另请参见:
    getItem(int)
  • countItems

    @Deprecated
    public int countItems()
    已弃用 从JDK 1.1版开始,由getItemCount()
  • getItem

    public String getItem(int index)
    获取与指定索引关联的项目。
    参数
    index - 项目的位置
    结果
    与指定索引相关联的项目
    另请参见:
    getItemCount()
  • add

    public void add(String item)
    将指定的项目添加到滚动列表的末尾。
    参数
    item - 要添加的项目
    从以下版本开始:
    JDK1.1 
  • addItem

    @Deprecated
    public void addItem(String item)
    已弃用 换成add(String)
  • add

    public void add(String item,int index)
    将指定的项目添加到由索引指示的位置的滚动列表中。 索引为零。 如果索引的值小于零,或者如果索引的值大于或等于列表中的项目数,则将项添加到列表的末尾。
    参数
    item - 要添加的项目; 如果此参数为null则该项目被视为空字符串, ""
    index - 添加项目的位置
    从以下版本开始:
    JDK1.1 
  • addItem

    @Deprecated
    public void addItem(String item,int index)
    已弃用 换成add(String, int)
  • replaceItem

    public void replaceItem(String newValue,int index)
    使用新的字符串替换滚动列表中指定索引处的项目。
    参数
    newValue - 用于替换现有项目的新字符串
    index - 要替换的项目的位置
    异常
    ArrayIndexOutOfBoundsException - 如果 index超出范围 
  • clear

    @Deprecated
    public void clear()
    已弃用 从JDK 1.1版开始,替换为removeAll()
  • remove

    public void remove(String item)
    从列表中删除项目的第一次出现。 如果选择了指定的项目,并且是列表中唯一选择的项目,列表将被设置为没有选择。
    参数
    item - 要从列表中删除的项目
    异常
    IllegalArgumentException - 如果项目不存在列表中
    从以下版本开始:
    JDK1.1 
  • remove

    public void remove(int position)
    从此滚动列表中移除指定位置的项目。 如果选择了具有指定位置的项目,并且是列表中唯一选择的项目,列表将被设置为不选择。
    参数
    position - 要删除的项目的索引
    异常
    ArrayIndexOutOfBoundsException - 如果 position小于0或大于 getItemCount()-1
    从以下版本开始:
    JDK1.1
    另请参见:
    add(String, int)
  • delItem

    @Deprecated
    public void delItem(int position)
    已弃用 替换为remove(String)remove(int)
  • getSelectedIndex

    public int getSelectedIndex()
    获取列表中所选项目的索引,
    结果
    所选项目的索引; 如果没有选择项目,或者选择了多个项目,则返回-1
    另请参见:
    select(int)deselect(int)isIndexSelected(int)
  • getSelectedIndexes

    public int[] getSelectedIndexes()
    获取列表中选定的索引。
    结果
    该滚动列表中所选索引的数组; 如果未选择任何项目,则返回零长度数组。
    另请参见:
    select(int)deselect(int)isIndexSelected(int)
  • getSelectedItem

    public String getSelectedItem()
    获取此滚动列表中选定的项目。
    结果
    列表中选定的项目; 如果没有选择项目,或者选择了多个项目,则返回null
    另请参见:
    select(int)deselect(int)isIndexSelected(int)
  • getSelectedItems

    public String[] getSelectedItems()
    获取此滚动列表中选定的项目。
    结果
    该滚动列表中所选项目的数组; 如果未选择任何项目,则返回零长度数组。
    另请参见:
    select(int)deselect(int)isIndexSelected(int)
  • getSelectedObjects

    public Object[] getSelectedObjects()
    在对象数组中获取此滚动列表中选定的项目。
    Specified by:
    getSelectedObjects在接口 ItemSelectable
    结果
    Object的数组, Object该滚动列表上的所选项目; 如果未选择任何项目,则返回零长度数组。
    另请参见:
    getSelectedItems()ItemSelectable
  • select

    public void select(int index)
    选择滚动列表中指定索引处的项目。

    请注意,超出范围参数无效,将导致未指定的行为。

    请注意,此方法应主要用于初始选择此组件中的项目。 以编程方式调用此方法不会触发ItemEvent 。 触发ItemEvent的唯一方法是通过用户交互。

    参数
    index - 要选择的项目的位置
    另请参见:
    getSelectedItem()deselect(int)isIndexSelected(int)
  • deselect

    public void deselect(int index)
    取消选择指定索引处的项目。

    请注意,超出范围参数无效,将导致未指定的行为。

    如果未选择指定索引处的项目,则忽略该操作。

    参数
    index - 要取消选择的项目的位置
    另请参见:
    select(int)getSelectedItem()isIndexSelected(int)
  • isIndexSelected

    public boolean isIndexSelected(int index)
    确定是否选择了此滚动列表中的指定项目。
    参数
    index - 要检查的项目
    结果
    true如果指定的项目已被选中; false否则
    从以下版本开始:
    JDK1.1
    另请参见:
    select(int)deselect(int)
  • isSelected

    @Deprecated
    public boolean isSelected(int index)
    已弃用 从JDK 1.1版开始,由isIndexSelected(int)
  • getRows

    public int getRows()
    获取此列表中的可见行数。 注意一旦创建了List ,这个数字就永远不会改变。
    结果
      此滚动列表中的可见行数 
  • isMultipleMode

    public boolean isMultipleMode()
    确定此列表是否允许多个选择。
    结果
    true如果此列表允许多个选择; 否则, false
    从以下版本开始:
    JDK1.1
    另请参见:
    setMultipleMode(boolean)
  • allowsMultipleSelections

    @Deprecated
    public boolean allowsMultipleSelections()
    已弃用 从JDK 1.1版开始,替换为isMultipleMode()
  • setMultipleMode

    public void setMultipleMode(boolean b)
    设置确定此列表是否允许多个选择的标志。 当选择模式从多选择更改为单选时,所选项目将如下更改:如果所选项目具有位置光标,则只会选择该项目。 如果没有选定的项目具有位置光标,则所有项目将被取消选择。
    参数
    b - 如果true然后允许多个选择; 否则,只能从列表中选择一个项目
    从以下版本开始:
    JDK1.1
    另请参见:
    isMultipleMode()
  • setMultipleSelections

    @Deprecated
    public void setMultipleSelections(boolean b)
    已弃用 从JDK 1.1版开始,由setMultipleMode(boolean)
  • getVisibleIndex

    public int getVisibleIndex()
    获取上次通过方法 makeVisible可见的项目的索引。
    结果
    上次显示的项目的索引
    另请参见:
    makeVisible(int)
  • makeVisible

    public void makeVisible(int index)
    使指定索引处的项目可见。
    参数
    index - 项目的位置
    另请参见:
    getVisibleIndex()
  • getPreferredSize

    public Dimension getPreferredSize(int rows)
    获取具有指定行数的列表的首选尺寸。
    参数
    rows - 列表中的行数
    结果
    给定指定行数必须可见的显示此滚动列表的首选尺寸
    从以下版本开始:
    JDK1.1
    另请参见:
    Component.getPreferredSize()
  • preferredSize

    @Deprecated
    public Dimension preferredSize(int rows)
    已弃用 从JDK 1.1版开始,替换为getPreferredSize(int)
  • getMinimumSize

    public Dimension getMinimumSize(int rows)
    获取具有指定行数的列表的最小尺寸。
    参数
    rows - 列表中的行数
    结果
    给定指定行数必须可见的显示此滚动列表的最小尺寸
    从以下版本开始:
    JDK1.1
    另请参见:
    Component.getMinimumSize()
  • minimumSize

    @Deprecated
    public Dimension minimumSize(int rows)
    已弃用 从JDK 1.1版开始,由getMinimumSize(int)
  • getListeners

    public <T extends EventListener> T[] getListeners(<T> listenerType)
    返回当前注册为FooListener的所有对象的数组,此对象为ListFooListener使用addFooListener方法注册。

    您可以使用类文字指定listenerType参数,例如FooListener.class 。 例如,您可以使用以下代码查询List l其项监听器:

      ItemListener[] ils = (ItemListener[])(l.getListeners(ItemListener.class)); 
    如果没有这样的侦听器存在,这个方法返回一个空数组。
    重写:
    getListenersComponent
    参数
    listenerType - 所请求的听众的类型; 此参数应指定从java.util.EventListener下降的java.util.EventListener
    结果
    在此列表中注册为 FooListener s的所有对象的数组,如果没有添加此类侦听器,则为空数组
    异常
    ClassCastException - 如果 listenerType未指定实现java.util.EventListener的类或 java.util.EventListener
    从以下版本开始:
    1.3
    另请参见:
    getItemListeners()
  • processItemEvent

    protected void processItemEvent(ItemEvent e)
    通过将其发送到任何已注册的ItemListener对象来处理在此列表上发生的项目事件。

    除非为此组件启用项目事件,否则不会调用此方法。 当以下情况发生时,项目事件被启用:

    • ItemListener对象通过addItemListener
    • 项目事件通过enableEvents启用。

    请注意,如果事件参数为null则该行为未指定,并可能导致异常。

    参数
    e - 项目事件
    从以下版本开始:
    JDK1.1
    另请参见:
    ItemEventItemListeneraddItemListener(java.awt.event.ItemListener)Component.enableEvents(long)
  • processActionEvent

    protected void processActionEvent(ActionEvent e)
    通过将此组件发送到任何已ActionListener对象来处理此组件上发生的操作事件。

    除非为此组件启用了操作事件,否则不会调用此方法。 当发生以下情况之一时,启用操作事件:

    • ActionListener对象通过addActionListener
    • 通过enableEvents启用操作事件。

    请注意,如果事件参数为null则行为未指定,并可能导致异常。

    参数
    e - 动作事件
    从以下版本开始:
    JDK1.1
    另请参见:
    ActionEventActionListeneraddActionListener(java.awt.event.ActionListener)Component.enableEvents(long)
  • paramString

    protected String paramString()
    返回表示此滚动列表状态的参数字符串。 该字符串对于调试很有用。
    重写:
    paramStringComponent
    结果
    该滚动列表的参数字符串 
  • delItems

    @Deprecated
    public void delItems(int start,
                                     int end)
    已弃用 从JDK 1.1版开始,未来不会公开使用。 这种方法只能作为一个包私有方法保留。
  • getAccessibleContext

    public AccessibleContext getAccessibleContext()
    获取AccessibleContext与此相关List 。 对于名单中, AccessibleContext需要一个形式AccessibleAWTList 。 如果需要,将创建一个新的AccessibleAWTList实例。
    Specified by:
    getAccessibleContext在界面 Accessible
    重写:
    getAccessibleContext在类别 Component
    结果
    一个 AccessibleAWTList ,作为这个 AccessibleContextList
    从以下版本开始:
    1.3 

 

posted @ 2020-03-06 09:30  厸清扬  阅读(353)  评论(0编辑  收藏  举报