public class List extends Component implements ItemSelectable, Accessible
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
实例列表项事件后。AWT也产生动作事件而选择列表中的一个项目是当用户按下回车键。
如果一个应用程序需要执行基于项目列表中选择或由用户启动一些行动,应该实行ItemListener
或ActionListener
酌情登记从这个列表接收事件的新听众。
对于多个选择滚动列表,它被认为是一个更好的用户界面,使用一个外部的手势(如点击一个按钮)触发动作。
ItemEvent
,
ItemListener
,
ActionEvent
,
ActionListener
,
Serialized Form
Modifier and Type | Class and Description |
---|---|
protected class |
List.AccessibleAWTList
这个类实现了对
List 类可访问性支持。
|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
List()
创建一个新的滚动列表。
|
List(int rows)
创建一个新的滚动列表,用指定的可见行数初始化。
|
List(int rows, boolean multipleMode)
创建一个新的滚动列表,以显示指定的行数。
|
Modifier and Type | Method and Description |
---|---|
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> |
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) 。
|
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
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()
addNotify
方法重写,继承类
Component
Component.isDisplayable()
,
Component.removeNotify()
,
Component.invalidate()
public void removeNotify()
removeNotify
方法重写,继承类
Component
Component.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
小于0或大于
getItemCount()-1
add(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()
getSelectedObjects
接口
ItemSelectable
Object
s数组;如果没有选中项目,返回一零数组长度。
getSelectedItems()
,
ItemSelectable
public 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
如果指定的项被选择;
false
否则
select(int)
,
deselect(int)
@Deprecated public boolean isSelected(int index)
isIndexSelected(int)
。
public int getRows()
List
已经建立,这将永远不会改变。
public boolean isMultipleMode()
true
如果该列表允许多重选择;否则,
false
setMultipleMode(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()
getPreferredSize
方法重写,继承类
Component
Component.getPreferredSize()
@Deprecated public Dimension preferredSize()
getPreferredSize()
。
preferredSize
方法重写,继承类
Component
public Dimension getMinimumSize(int rows)
rows
-表中的行数
Component.getMinimumSize()
@Deprecated public Dimension minimumSize(int rows)
getMinimumSize(int)
。
public Dimension getMinimumSize()
getMinimumSize
方法重写,继承类
Component
Component.getMinimumSize()
@Deprecated public Dimension minimumSize()
getMinimumSize()
。
minimumSize
方法重写,继承类
Component
public void addItemListener(ItemListener l)
select
或
deselect
。如果听众
l
是
null
,不引发异常,则不执行行动。
参考AWT Threading Issues对AWT的线程模型的细节。
addItemListener
接口
ItemSelectable
l
-项目的倾听者
removeItemListener(java.awt.event.ItemListener)
,
getItemListeners()
,
select(int)
,
deselect(int)
,
ItemEvent
,
ItemListener
public void removeItemListener(ItemListener l)
removeItemListener
接口
ItemSelectable
l
-项目的倾听者
addItemListener(java.awt.event.ItemListener)
,
getItemListeners()
,
ItemEvent
,
ItemListener
public ItemListener[] getItemListeners()
ItemListener
s列表或一个空数组如果没有项目的听众正在注册
addItemListener(java.awt.event.ItemListener)
,
removeItemListener(java.awt.event.ItemListener)
,
ItemEvent
,
ItemListener
public void addActionListener(ActionListener l)
如果听众l
是null
,不引发异常,则不执行行动。
指对AWT的线程模型的细节AWT Threading Issues。
l
的监听行动
removeActionListener(java.awt.event.ActionListener)
,
getActionListeners()
,
ActionEvent
,
ActionListener
public void removeActionListener(ActionListener l)
l
是
null
,不引发异常,则不执行行动。
参考AWT Threading Issues对AWT的线程模型的细节。
l
的监听行动
addActionListener(java.awt.event.ActionListener)
,
getActionListeners()
,
ActionEvent
,
ActionListener
public ActionListener[] getActionListeners()
ActionListener
s列表或一个空数组如果没有行动的听众正在注册
addActionListener(java.awt.event.ActionListener)
,
removeActionListener(java.awt.event.ActionListener)
,
ActionEvent
,
ActionListener
public <T extends EventListener> T[] getListeners(类<T> listenerType)
FooListener
s在这
List
数组。
FooListener
s使用
addFooListener
方法注册。如果没有这样
您可以指定一个类的listenerType
字面的说法,如FooListener.class
。例如,你可以查询其产品的听众与下面的代码一List
l
:
itemlistener [] ILS =(itemlistener [ ])(l.getlisteners(itemlistener。类));听众的存在,此方法将返回空数组。
getListeners
方法重写,继承类
Component
listenerType
-听众的类型要求;这个参数应该指定一个接口,从
java.util.EventListener
FooListener
s数组,或一个空数组如果没有这样的听众已添加
ClassCastException
-如果
listenerType
不指定一个类或接口实现
java.util.EventListener
getItemListeners()
protected void processEvent(AWTEvent e)
ItemEvent
实例,它调用
processItemEvent
方法。否则,如果事件是
ActionEvent
实例,它调用
processActionEvent
。如果事件不是一项事件或行动的事件,它调用父类的
processEvent
上。
注意,如果参数是null
行为是不可能导致异常。
processEvent
方法重写,继承类
Component
e
-事件
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()
paramString
方法重写,继承类
Component
@Deprecated public void delItems(int start, int end)
public AccessibleContext getAccessibleContext()
AccessibleContext
List
。对于列表的
AccessibleContext
以一个
AccessibleAWTList
形式,创造了一个新的
AccessibleAWTList
实例,如果必要的话。
getAccessibleContext
接口
Accessible
getAccessibleContext
方法重写,继承类
Component
AccessibleAWTList
作为本
List
的
AccessibleContext
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.