E - このリストの要素の型public class JList<E> extends JComponent implements Scrollable, Accessible
ListModelが、リストの内容を保持します。
読取り専用のListModelのインスタンスを自動生成するJListコンストラクタを使用すれば、オブジェクトの配列またはVectorを簡単に表示できます。
// Create a JList that displays strings from an array
String[] data = {"one", "two", "three", "four"};
JList<String> myList = new JList<String>(data);
// Create a JList that displays the superclasses of JList.class, by
// creating it with a Vector populated with this data
Vector<Class<?>> superClasses = new Vector<Class<?>>();
Class<JList> rootClass = javax.swing.JList.class;
for(Class<?> cls = rootClass; cls != null; cls = cls.getSuperclass()) {
superClasses.addElement(cls);
}
JList<Class<?>> myList = new JList<Class<?>>(superClasses);
// The automatically created model is stored in JList's "model"
// property, which you can retrieve
ListModel<Class<?>> model = myList.getModel();
for(int i = 0; i < model.getSize(); i++) {
System.out.println(model.getElementAt(i));
}
コンストラクタまたはsetModelメソッドを使用して、ListModelをJListに直接指定できます。コンテンツがstaticである必要はありません。項目数や項目の値は、時間の経過とともに変化してもかまいません。ListModelが正しく実装されていれば、変更が発生するたびに、追加されたjavax.swing.event.ListDataListenerのセットに通知が送られます。これらの変更は、修正、追加または削除されたリスト・インデックスの範囲を識別するjavax.swing.event.ListDataEventによって記述されます。JListのListUIは、モデルの変更を待機することによって、視覚表現が常に最新の状態になるようにします。
単純な動的コンテンツのJListアプリケーションは、DefaultListModelクラスを使用してリスト要素を管理できます。このクラスは、ListModelインタフェースを実装し、java.util.Vectorと同様のAPIも提供します。一方、カスタムListModel実装を必要とするアプリケーションは、リスナーの管理および通知に関する基本機能を提供するAbstractListModelのサブクラスとすることができます。たとえば、AbstractListModelの読取り専用実装の場合、次のようになります。
// This list model has about 2^16 elements. Enjoy scrolling.
ListModel<String> bigData = new AbstractListModel<String>() {
public int getSize() { return Short.MAX_VALUE; }
public String getElementAt(int index) { return "Index " + index; }
};
JListの選択状態は、ListSelectionModelのインスタンスである別のモデルによって管理されます。JListは、構築時に選択モデルによって初期化され、また、この選択モデルの照会や設定を行う各メソッドを含んでいます。JListは、選択を簡単に管理できる便利なメソッドも提供します。たとえばsetSelectedIndex、getSelectedValueなどのカバー・メソッドでは、選択モデルとのやりとりの詳細を管理できます。デフォルトでは、JListの選択モデルは、任意の項目の組み合わせを一度に選択できるように設定されます(MULTIPLE_INTERVAL_SELECTION選択モード)。選択モードは、選択モデル上で直接変更するか、JListのカバー・メソッドを使って変更します。ユーザーのジェスチャに応じて選択モデルを更新する処理は、リストのListUIによって行われます。
ListSelectionModelが正しく実装されていれば、選択が変更されるたびに追加されたjavax.swing.event.ListSelectionListenerのセットに通知が送られます。これらの変更は、選択範囲の変更を識別するjavax.swing.event.ListSelectionEventによって記述されます。
リスト選択の変更を待機する方法としては、JListに直接ListSelectionListenerを追加することをお勧めします。すると、JListが選択モデルの変更を待機し、変更があった場合にリスナーに通知を送るようになります。
リストの視覚表現を常に最新の状態にしておくため、選択の変更を待機する処理は、リストのListUIによって行われます。
JList内のセルのペイントは、リスト上にcellRendererプロパティとしてインストールされた、セル・レンダラと呼ばれる委譲によって処理されます。このレンダラは、「ゴムスタンプ」のように使用してセルをペイントできるjava.awt.Componentを提供します。セルをペイントする必要が生じるたびに、リストのListUIはセル・レンダラにコンポーネントを要求し、それを適切な位置に移動した後、paintメソッドを使用してセルのコンテンツをペイントします。JLabelコンポーネントを使用してレンダリングを行うデフォルトのセル・レンダラは、リストのListUIによってインストールされます。次のようなコードにより、独自のレンダラを使用することもできます。
// Display an icon and a string for each object in the list.
class MyCellRenderer extends JLabel implements ListCellRenderer<Object> {
final static ImageIcon longIcon = new ImageIcon("long.gif");
final static ImageIcon shortIcon = new ImageIcon("short.gif");
// This is the only method defined by ListCellRenderer.
// We just reconfigure the JLabel each time we're called.
public Component getListCellRendererComponent(
JList<?> list, // the list
Object value, // value to display
int index, // cell index
boolean isSelected, // is the cell selected
boolean cellHasFocus) // does the cell have focus
{
String s = value.toString();
setText(s);
setIcon((s.length() > 10) ? longIcon : shortIcon);
if (isSelected) {
setBackground(list.getSelectionBackground());
setForeground(list.getSelectionForeground());
} else {
setBackground(list.getBackground());
setForeground(list.getForeground());
}
setEnabled(list.isEnabled());
setFont(list.getFont());
setOpaque(true);
return this;
}
}
myList.setCellRenderer(new MyCellRenderer());
セル・レンダリングの別のジョブは、リストのサイズ情報の特定にも役立ちます。デフォルトでは、リストのListUIがセル・レンダリングに各リスト項目の推奨サイズを問い合わせることによって、セルのサイズを決定します。リストの項目数が多い場合、この処理は負荷が大きくなります。これらの計算を回避するには、リスト上にfixedCellWidthとfixedCellHeightを設定するか、これらの値が単一のプロトタイプ値に基づいて自動計算されるように設定します。
JList<String> bigDataList = new JList<String>(bigData);
// We don't want the JList implementation to compute the width
// or height of all of the list cells, so we give it a string
// that's as big as we'll need for any cell. It uses this to
// compute values for the fixedCellWidth and fixedCellHeight
// properties.
bigDataList.setPrototypeCellValue("Index 1234567890");
JListはスクロールを直接実装していません。スクロール・リストを作成するには、これをJScrollPaneのビューポート・ビューとして設定します。たとえば、
JScrollPane scrollPane = new JScrollPane(myList); // Or in two steps: JScrollPane scrollPane = new JScrollPane(); scrollPane.getViewport().setView(myList);
JListは、ダブルクリックやトリプル・クリック(またはそれ以上の回数のクリック)のような特別な処理は行いませんが、これらのイベントの発生時にアクションを実行したい場合は、MouseListenerを簡単に追加できます。クリックされたセルを調べるには、locationToIndexメソッドを使用します。たとえば、
MouseListener mouseListener = new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2) {
int index = list.locationToIndex(e.getPoint());
System.out.println("Double clicked on Item " + index);
}
}
};
list.addMouseListener(mouseListener);
警告: Swingはスレッドに対して安全ではありません。詳細は、「Swing's Threading Policy」を参照してください。
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。1.4以降、すべてのJavaBeans(tm)用の長期間の格納サポートがjava.beansパッケージに追加されています。XMLEncoderを参照してください。
詳細は、「The Java Tutorial」の「How to Use Lists」を参照してください。
| 修飾子と型 | クラスと説明 |
|---|---|
protected class |
JList.AccessibleJList
このクラスは
JListクラスのアクセシビリティ・サポートを実装しています。 |
static class |
JList.DropLocation
TransferHandler.DropLocationのサブクラスであり、JListのドロップ位置を表します。 |
JComponent.AccessibleJComponentContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| 修飾子と型 | フィールドと説明 |
|---|---|
static int |
HORIZONTAL_WRAP
セルが水平方向の次に垂直方向の順で並ぶ「ニュースペーパー・スタイル」レイアウトを示します。
|
static int |
VERTICAL
セルを垂直方向に1列に並べたレイアウト(デフォルト)を示します。
|
static int |
VERTICAL_WRAP
セルが垂直方向の次に水平方向の順で並ぶ「ニュースペーパー・スタイル」レイアウトを示します。
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| コンストラクタと説明 |
|---|
JList()
空の読取り専用モデルで
JListを構築します。 |
JList(E[] listData)
指定された配列の要素を表示する
JListを構築します。 |
JList(ListModel<E> dataModel)
指定された
null以外のモデルの要素を表示するJListを構築します。 |
JList(Vector<? extends E> listData)
指定された
Vectorの要素を表示するJListを構築します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
void |
addListSelectionListener(ListSelectionListener listener)
選択が変更されるたびに通知されるリストにリスナーを追加します。選択状態の変更を待機する方法としてお勧めです。
|
void |
addSelectionInterval(int anchor, int lead)
指定された区間を現在の選択に加えます。
|
void |
clearSelection()
選択をクリアします。このメソッドを呼び出したあとは、
isSelectionEmptyはtrueを返します。 |
protected ListSelectionModel |
createSelectionModel()
リストの選択モデル・プロパティを初期化するため、構築中に呼び出される
DefaultListSelectionModelのインスタンスを返します。 |
void |
ensureIndexIsVisible(int index)
囲み側のビュー・ポート内のリストをスクロールし、指定されたセルを完全に可視にします。
|
protected void |
fireSelectionValueChanged(int firstIndex, int lastIndex, boolean isAdjusting)
選択のリストに直接追加された
ListSelectionListenerに、選択モデルに変更が加えられたことを通知します。 |
AccessibleContext |
getAccessibleContext()
この
JListに関連付けられているAccessibleContextを取得します。 |
int |
getAnchorSelectionIndex()
アンカー選択インデックスを返します。
|
Rectangle |
getCellBounds(int index0, int index1)
2つのインデックスで指定されたセルの範囲を示す、リストの座標系内の境界の矩形を返します。
|
ListCellRenderer<? super E> |
getCellRenderer()
リスト項目をペイントするオブジェクトを返します。
|
boolean |
getDragEnabled()
自動ドラッグ処理が有効であるかどうかを返します。
|
JList.DropLocation |
getDropLocation()
このコンポーネントがコンポーネントのドラッグ&ドロップ時にドロップ位置として視覚的に示す位置を返します。現在位置が表示されていない場合は
nullを返します。 |
DropMode |
getDropMode()
このコンポーネントのドロップ・モードを返します。
|
int |
getFirstVisibleIndex()
現在表示されている最小のリスト・インデックスを返します。
|
int |
getFixedCellHeight()
fixedCellHeightプロパティの値を返します。 |
int |
getFixedCellWidth()
fixedCellWidthプロパティの値を返します。 |
int |
getLastVisibleIndex()
現在表示されている最大のリスト・インデックスを返します。
|
int |
getLayoutOrientation()
リストのレイアウト方向のプロパティを返します。レイアウトがセルの単一の列の場合は
VERTICAL、コンテンツが垂直方向の次に水平方向の順に並ぶ「ニュースペーパー・スタイル」の場合はVERTICAL_WRAP、コンテンツが水平方向の次に垂直方向の順に並ぶ「ニュースペーパー・スタイル」の場合はHORIZONTAL_WRAPを返します。 |
int |
getLeadSelectionIndex()
選択範囲のリード・インデックスを返します。
|
ListSelectionListener[] |
getListSelectionListeners()
addListSelectionListenerを使用してこのJListに追加されたすべてのListSelectionListenerの配列を返します。 |
int |
getMaxSelectionIndex()
選択されているセルの最大インデックスを返すか、選択範囲が空の場合は
-1を返します。 |
int |
getMinSelectionIndex()
選択されているセルの最小インデックスを返すか、選択範囲が空の場合は
-1を返します。 |
ListModel<E> |
getModel()
JListコンポーネントによって表示される項目のリストを保持するデータ・モデルを返します。 |
int |
getNextMatch(String prefix, int startIndex, Position.Bias bias)
指定された接頭辞で始まる、
toString値を持つ次のリスト要素を返します。 |
Dimension |
getPreferredScrollableViewportSize()
visibleRowCount行を表示するために必要なビュー・ポートのサイズを計算します。 |
E |
getPrototypeCellValue()
セルの固定幅と固定の高さを計算するために使用する値、「プロトタイプ」セル値を返します。
|
int |
getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
次または前のブロックを表示するためにスクロールする距離を返します。
|
boolean |
getScrollableTracksViewportHeight()
この
JListがJViewport内に表示され、ビュー・ポートの幅がリストの適切な高さよりも高い場合、またはレイアウト方向がVERTICAL_WRAPでvisibleRowCount <= 0である場合はtrueを返します。それ以外の場合はfalseを返します。 |
boolean |
getScrollableTracksViewportWidth()
この
JListがJViewport内に表示され、ビュー・ポートの幅がリストの適切な幅よりも広い場合、またはレイアウト方向がHORIZONTAL_WRAPでvisibleRowCount <= 0である場合はtrueを返します。それ以外の場合はfalseを返します。 |
int |
getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
次または前の行(垂直スクロール)または列(水平スクロール)を表示するためにスクロールする距離を返します。
|
int |
getSelectedIndex()
選択されているセルの最小インデックスを返します。リスト内の項目が1つだけ選択されている場合は「選択値」。
|
int[] |
getSelectedIndices()
選択されているすべてのインデックスの昇順配列を返します。
|
E |
getSelectedValue()
選択されているセルの最小インデックスの値を返します。リスト内の項目が1つだけ選択されている場合は「選択値」
|
Object[] |
getSelectedValues()
非推奨。
JDK 1.7以降は、
getSelectedValuesList()に置き換えられています |
List<E> |
getSelectedValuesList()
選択されているすべての項目を、リスト内のインデックスに基づいて昇順のリストにして返します。
|
Color |
getSelectionBackground()
選択された項目のバックグラウンドの描画に使用する色を返します。
|
Color |
getSelectionForeground()
選択された項目のフォアグラウンドの描画に使用する色を返します。
|
int |
getSelectionMode()
リストの現在の選択モードを返します。
|
ListSelectionModel |
getSelectionModel()
現在の選択モデルを返します。
|
String |
getToolTipText(MouseEvent event)
指定されたイベントで使用されるツールヒント・テキストを返します。
|
ListUI |
getUI()
このコンポーネントをレンダリングするLook & Feelオブジェクトの
ListUIを返します。 |
String |
getUIClassID()
このコンポーネントのLook & Feelを定義する
javax.swing.plaf.ListUIクラスの名前を検索するために使用するUIDefaultsキー、"ListUI"を返します。 |
boolean |
getValueIsAdjusting()
選択モデルの
isAdjustingプロパティの値を返します。 |
int |
getVisibleRowCount()
visibleRowCountプロパティの値を返します。 |
Point |
indexToLocation(int index)
リストの座標系内の指定された項目の原点を返します。
|
boolean |
isSelectedIndex(int index)
指定のインデックスが選択されている場合は
trueを返し、それ以外の場合はfalseを返します。 |
boolean |
isSelectionEmpty()
何も選択されていない場合は
trueを返し、それ以外の場合はfalseを返します。 |
int |
locationToIndex(Point location)
リストの座標系内の指定された位置にもっとも近いセル・インデックスを返します。
|
protected String |
paramString()
この
JListのString表現を返します。 |
void |
removeListSelectionListener(ListSelectionListener listener)
リストから選択リスナーを削除します。
|
void |
removeSelectionInterval(int index0, int index1)
選択範囲を、指定された区間と現在の選択範囲との差集合に設定します。
|
void |
setCellRenderer(ListCellRenderer<? super E> cellRenderer)
リスト内の各セルをペイントするために使用される委譲を設定します。
|
void |
setDragEnabled(boolean b)
自動ドラッグ処理をオンまたはオフにします。
|
void |
setDropMode(DropMode dropMode)
このコンポーネントのドロップ・モードを設定します。
|
void |
setFixedCellHeight(int height)
リストに含まれるすべてのセルの高さとして使用する固定値を設定します。
|
void |
setFixedCellWidth(int width)
リストに含まれるすべてのセルの幅として使用する固定値を設定します。
|
void |
setLayoutOrientation(int layoutOrientation)
リストのセルの配置方法を定義します。
|
void |
setListData(E[] listData)
項目の配列から読取り専用
ListModelを構築し、このモデルを使ってsetModelを呼び出します。 |
void |
setListData(Vector<? extends E> listData)
Vectorから読取り専用ListModelを構築し、このモデルを使ってsetModelを呼び出します。 |
void |
setModel(ListModel<E> model)
リストの内容または「値」を表すモデルを設定し、プロパティ変更リスナーに通知して、リストの選択をクリアします。
|
void |
setPrototypeCellValue(E prototypeCellValue)
prototypeCellValueプロパティを設定し、新しい値がnon-nullである場合は、セル・レンダリング・コンポーネントにセル・レンダラからの指定の値(およびインデックス0)を要求し、このコンポーネントの推奨サイズを使用して、fixedCellWidthプロパティとfixedCellHeightプロパティを計算します。 |
void |
setSelectedIndex(int index)
単一セルを選択します。
|
void |
setSelectedIndices(int[] indices)
選択を、指定の配列によって示される一連のインデックスに変更します。
|
void |
setSelectedValue(Object anObject, boolean shouldScroll)
指定されたオブジェクトをリストから選択します。
|
void |
setSelectionBackground(Color selectionBackground)
選択された項目のバックグラウンドのレンダリングに使用する色(セル・レンダリングが選択したセルの塗りつぶしに使用できる色)を設定します。
|
void |
setSelectionForeground(Color selectionForeground)
選択された項目のフォアグラウンドのレンダリングに使用する色(セル・レンダリングがテキストとグラフィックスのレンダリングに使用できる色)を設定します。
|
void |
setSelectionInterval(int anchor, int lead)
指定された区間を選択します。
|
void |
setSelectionMode(int selectionMode)
リストの選択モードを設定します。
|
void |
setSelectionModel(ListSelectionModel selectionModel)
リストの
selectionModelをnullではないListSelectionModel実装に設定します。 |
void |
setUI(ListUI ui)
このコンポーネントをレンダリングするLook & Feelオブジェクトの
ListUIを設定します。 |
void |
setValueIsAdjusting(boolean b)
選択モデルの
valueIsAdjustingプロパティを設定します。 |
void |
setVisibleRowCount(int visibleRowCount)
visibleRowCountプロパティ(レイアウト方向によって意味が異なる)を設定します。レイアウト方向がVERTICALの場合、スクロールしないで表示できる適切な行数が設定されます。これ以外の方向の場合、セルの折返しに影響があります。 |
void |
updateUI()
ListUIプロパティに現在のLook & Feelが提供する値を設定することにより、このプロパティをリセットします。 |
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateadd, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCyclepublic static final int VERTICAL
setLayoutOrientation(int)、定数フィールド値public static final int VERTICAL_WRAP
setLayoutOrientation(int)、定数フィールド値public static final int HORIZONTAL_WRAP
setLayoutOrientation(int)、定数フィールド値public JList(ListModel<E> dataModel)
null以外のモデルの要素を表示するJListを構築します。すべてのJListコンストラクタは、このオブジェクトに委譲します。
このコンストラクタは、ToolTipManagerにリストを登録することにより、セル・レンダリングのツールヒントが提供されるようにします。
dataModel - リストのモデルIllegalArgumentException - モデルがnullの場合public JList(E[] listData)
JListを構築します。このコンストラクタは、指定された配列の読取り専用モデルを作成し、ListModelをとるコンストラクタに委譲します。
このメソッドにnull値を渡そうとすると未定義の動作が発生し、さらに多くの場合は例外が発生します。作成されたモデルは、指定された配列を直接参照します。リストの作成後に配列を変更しようとすると、不確定な動作が生じます。
listData - データ・モデルにロードされるObjectの配列(null以外)public JList(Vector<? extends E> listData)
Vectorの要素を表示するJListを構築します。このコンストラクタは、指定されたVectorの読取り専用モデルを作成し、ListModelをとるコンストラクタに委譲します。
このメソッドにnull値を渡そうとすると未定義の動作が発生し、さらに多くの場合は例外が発生します。作成されたモデルは、指定されたVectorを直接参照します。リストの作成後にVectorを変更しようとすると、不確定な動作が生じます。
listData - データ・モデルにロードされるVector。non-nullpublic JList()
JListを構築します。public ListUI getUI()
ListUIを返します。ListUIオブジェクトpublic void setUI(ListUI ui)
ListUIを設定します。ui - ListUIオブジェクトUIDefaults.getUI(javax.swing.JComponent)public void updateUI()
ListUIプロパティに現在のLook & Feelが提供する値を設定することにより、このプロパティをリセットします。現在のセル・レンダリングがLook & Feelによってではなく開発者によってインストールされたものである場合、この処理を実行すると、SwingUtilities.updateComponentTreeUIが呼び出されて、セル・レンダリングとその子が更新されます。public String getUIClassID()
javax.swing.plaf.ListUIクラスの名前を検索するために使用するUIDefaultsキー、"ListUI"を返します。getUIClassID 、クラス: JComponentJComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)public E getPrototypeCellValue()
nullが返される可能性があります。prototypeCellValueプロパティの値setPrototypeCellValue(E)public void setPrototypeCellValue(E prototypeCellValue)
prototypeCellValueプロパティを設定し、新しい値がnon-nullである場合は、セル・レンダリング・コンポーネントにセル・レンダラからの指定の値(およびインデックス0)を要求し、このコンポーネントの推奨サイズを使用して、fixedCellWidthプロパティとfixedCellHeightプロパティを計算します。
リストが長すぎてListUIが各セルの幅と高さを計算できず、ほかのセルと同じスペースを占有することがわかっているセル値(プロトタイプ)がある場合には、このメソッドが便利です。
prototypeCellValue、fixedCellHeight、fixedCellWidthの3つのプロパティはすべてこのメソッドで変更できますが、PropertyChangeEvent通知が送信されるのは、prototypeCellValueプロパティが変更された場合にかぎられます。
このプロパティの設定例を参照するには、上記のクラスの説明を参照してください。
このプロパティのデフォルト値はnullです。
これはJavaBeansバウンド・プロパティです。
prototypeCellValue - fixedCellWidthおよびfixedCellHeightのベースとなる値getPrototypeCellValue(), setFixedCellWidth(int), setFixedCellHeight(int), Container.addPropertyChangeListener(java.beans.PropertyChangeListener)public int getFixedCellWidth()
fixedCellWidthプロパティの値を返します。setFixedCellWidth(int)public void setFixedCellWidth(int width)
widthが -1の場合、リストの各要素のセル・レンダリング・コンポーネントにgetPreferredSizeを適用することにより、ListUIでセルの幅が計算されます。
このプロパティのデフォルト値は-1です。
これはJavaBeansバウンド・プロパティです。
width - リスト内のすべてのセルの幅setPrototypeCellValue(E), setFixedCellWidth(int), Container.addPropertyChangeListener(java.beans.PropertyChangeListener)public int getFixedCellHeight()
fixedCellHeightプロパティの値を返します。setFixedCellHeight(int)public void setFixedCellHeight(int height)
heightが -1の場合、リストの各要素のセル・レンダリング・コンポーネントにgetPreferredSizeを適用することにより、ListUIでセルの高さが計算されます。
このプロパティのデフォルト値は-1です。
これはJavaBeansバウンド・プロパティです。
height - リスト内のすべてのセルの高さsetPrototypeCellValue(E), setFixedCellWidth(int), Container.addPropertyChangeListener(java.beans.PropertyChangeListener)public ListCellRenderer<? super E> getCellRenderer()
cellRendererプロパティの値setCellRenderer(javax.swing.ListCellRenderer<? super E>)public void setCellRenderer(ListCellRenderer<? super E> cellRenderer)
prototypeCellValueプロパティがnon-nullである場合は、セル・レンダリングを設定すると、fixedCellWidthプロパティとfixedCellHeightプロパティが再計算されます。しかし、cellRendererプロパティに対してはPropertyChangeEventは1つだけ生成されます。
このプロパティのデフォルト値はListUI委譲(Look & Feelの実装)によって提供されます。
これはJavaBeansバウンド・プロパティです。
cellRenderer - リストのセルをペイントするListCellRenderergetCellRenderer()public Color getSelectionForeground()
ListUI実装によってインストールされたレンダリングと同様に、DefaultListCellRendererは、この色を使って、選択されている項目のフォアグラウンドをレンダリングします。setSelectionForeground(java.awt.Color), DefaultListCellRendererpublic void setSelectionForeground(Color selectionForeground)
ListUI実装によってインストールされたレンダリングと同様に、DefaultListCellRendererは、この色を使って、選択されている項目のフォアグラウンドをレンダリングします。
このプロパティのデフォルト値は、Look & Feelの実装によって定義されます。
これはJavaBeansバウンド・プロパティです。
selectionForeground - 選択されたリスト項目のフォアグラウンドで使用するColorgetSelectionForeground(), setSelectionBackground(java.awt.Color), JComponent.setForeground(java.awt.Color), JComponent.setBackground(java.awt.Color), JComponent.setFont(java.awt.Font), DefaultListCellRendererpublic Color getSelectionBackground()
ListUI実装によってインストールされたレンダリングと同様に、DefaultListCellRendererは、この色を使って、選択されている項目のバックグラウンドをレンダリングします。setSelectionBackground(java.awt.Color), DefaultListCellRendererpublic void setSelectionBackground(Color selectionBackground)
ListUI実装によってインストールされたレンダリングと同様に、DefaultListCellRendererは、この色を使って、選択されている項目のバックグラウンドを塗りつぶします。
このプロパティのデフォルト値は、Look & Feelの実装によって定義されます。
これはJavaBeansバウンド・プロパティです。
selectionBackground - 選択されたセルのバックグラウンドで使用するColorgetSelectionBackground(), setSelectionForeground(java.awt.Color), JComponent.setForeground(java.awt.Color), JComponent.setBackground(java.awt.Color), JComponent.setFont(java.awt.Font), DefaultListCellRendererpublic int getVisibleRowCount()
visibleRowCountプロパティの値を返します。この値の解釈方法の詳細については、setVisibleRowCount(int)のドキュメントを参照してください。visibleRowCountプロパティの値。setVisibleRowCount(int)public void setVisibleRowCount(int visibleRowCount)
visibleRowCountプロパティ(レイアウト方向によって意味が異なる)を設定します。レイアウト方向がVERTICALの場合、スクロールしないで表示できる適切な行数が設定されます。これ以外の方向の場合、セルの折返しに影響があります。
VERTICAL方向の場合:
このプロパティを設定すると、囲み側のビュー・ポートの推奨サイズの計算に使用される、getPreferredScrollableViewportSize()メソッドの戻り値に影響があります。詳細は、該当メソッドのドキュメントを参照してください。
HORIZONTAL_WRAP方向またはVERTICAL_WRAP方向の場合:
セルの折返しの方法に影響があります。詳細は、setLayoutOrientation(int)のドキュメントを参照してください。
このプロパティのデフォルト値は8です。
負の値を指定してこのメソッドを呼び出した場合、プロパティが0に設定されます。
これはJavaBeansバウンド・プロパティです。
visibleRowCount - スクロールしないで表示できる適切な行数を指定する整数getVisibleRowCount(), getPreferredScrollableViewportSize(), setLayoutOrientation(int), JComponent.getVisibleRect(), JViewportpublic int getLayoutOrientation()
VERTICAL、コンテンツが垂直方向の次に水平方向の順に並ぶ「ニュースペーパー・スタイル」の場合はVERTICAL_WRAP、コンテンツが水平方向の次に垂直方向の順に並ぶ「ニュースペーパー・スタイル」の場合はHORIZONTAL_WRAPを返します。layoutOrientationプロパティの値setLayoutOrientation(int)public void setLayoutOrientation(int layoutOrientation)
JListがあるとします。セルのレイアウト方法は、次のどれかになります。
VERTICAL: 0
1
2
3
4
HORIZONTAL_WRAP: 0 1 2
3 4
VERTICAL_WRAP: 0 3
1 4
2
これらのレイアウトの説明は、次のとおりです。
値 | 説明 |
|---|---|
VERTICAL
| セルは垂直方向に1列に配置されます。 |
HORIZONTAL_WRAP
| セルは水平方向に配置され、必要に応じて次の行へ折り返されます。visibleRowCountプロパティの値がゼロ以下である場合、折返しはリストの幅によって決定されます。それ以外の場合は、リスト内にvisibleRowCount行が確保されるように折返しが行われます。
|
VERTICAL_WRAP
| セルは垂直方向に配置され、必要に応じて次の列へ折り返されます。visibleRowCountプロパティの値がゼロ以下である場合、折返しはリストの高さによって決定されます。それ以外の場合は、visibleRowCount行で折返しが行われます。
|
このプロパティのデフォルト値はVERTICALです。
layoutOrientation - 新しいレイアウト方向。VERTICAL、HORIZONTAL_WRAP、またはVERTICAL_WRAPのどれかIllegalArgumentException - layoutOrientationが許容値のどれでもない場合getLayoutOrientation(), setVisibleRowCount(int), getScrollableTracksViewportHeight(), getScrollableTracksViewportWidth()public int getFirstVisibleIndex()
componentOrientationが左から右である場合、最初の可視セルはリストの左上隅にもっとも近い位置に見つかります。{@code componentOrientation}が右から左である場合、最初の可視セルはリストの右上隅にもっとも近い位置に見つかります。どのセルも可視ではない場合やリストが空である場合には-1を返します。返されたセルは部分的に可視でもかまいません。getLastVisibleIndex(), JComponent.getVisibleRect()public int getLastVisibleIndex()
-1を返します。返されたセルは部分的に可視でもかまいません。getFirstVisibleIndex(), JComponent.getVisibleRect()public void ensureIndexIsVisible(int index)
scrollRectToVisibleと、指定されたセルの境界が呼び出されます。このメソッドを有効にするには、JListがJViewport内に存在する必要があります。
指定されたインデックスがリストのセルの範囲外にある場合、このメソッドは何も行いません。
index - 可視にするセルのインデックスJComponent.scrollRectToVisible(java.awt.Rectangle), JComponent.getVisibleRect()public void setDragEnabled(boolean b)
trueに設定し、リストのTransferHandlerの値をnon-nullにしてください。dragEnabledプロパティのデフォルト値はfalseです。
このプロパティを受け入れ、ユーザーのドラッグ・ジェスチャを認識する処理は、Look & Feel実装(特にリストのListUI)によって行われます。自動ドラッグ処理が有効である場合、ほとんどのLook & Feel (BasicLookAndFeelのサブクラスのLook & Feelを含む)は、ユーザーが項目の上でマウス・ボタンを押し、マウスを数ピクセル移動すると、ドラッグ&ドロップ操作を開始します。したがって、このプロパティをtrueに設定すると、選択の動作に微妙に影響する場合があります。
このプロパティを無視するようなLook & Feelを使用している場合も、リストのTransferHandler上でexportAsDragを呼び出すことにより、ドラッグ&ドロップ操作を開始できます。
b - 自動ドラッグ処理を有効にするかどうかHeadlessException - bがtrueで、GraphicsEnvironment.isHeadless()がtrueを返す場合GraphicsEnvironment.isHeadless(), getDragEnabled(), JComponent.setTransferHandler(javax.swing.TransferHandler), TransferHandlerpublic boolean getDragEnabled()
dragEnabledプロパティの値setDragEnabled(boolean)public final void setDropMode(DropMode dropMode)
DropMode.USE_SELECTIONになっています。ただし、ユーザー側の操作を改善する場合は、ほかのモードを使用することをお勧めします。たとえば、DropMode.ONは、リスト内の実際の選択内容に影響を及ぼすことなく、選択されたように項目を表示する動作と似た動作を提供します。
JListは次のドロップ・モードをサポートしています。
DropMode.USE_SELECTIONDropMode.ONDropMode.INSERTDropMode.ON_OR_INSERTTransferHandlerを持っていなければ、ドロップ・モードの効果はありません。dropMode - 使用するドロップ・モードIllegalArgumentException - ドロップ・モードがサポートされていないかnullの場合getDropMode(), getDropLocation(), JComponent.setTransferHandler(javax.swing.TransferHandler), TransferHandlerpublic final DropMode getDropMode()
setDropMode(javax.swing.DropMode)public final JList.DropLocation getDropLocation()
nullを返します。
このメソッドは、TransferHandlerからドロップ位置を照会する手段にはなりません。ドロップ位置は、TransferHandlerのcanImportが返され、ドロップ位置を表示する準備ができてから設定されるためです。
このプロパティが変更されると、コンポーネントにより、プロパティ変更イベントdropLocationがトリガーされます。
デフォルトでは、このプロパティに対する変更を待機し、ドロップ位置を視覚的に示す処理は、リストのListUIが行います。これは、ドロップ位置を直接ペイントするか、セル・レンダラをインストールしてこの処理を行わせるか、またはその両方の処理を行う可能性があります。カスタム・ドロップ位置のペイントを実装するか、デフォルトのセル・レンダラを置き換えるか、またはその両方の処理を行う開発者は、このプロパティを考慮する必要がある場合があります。
setDropMode(javax.swing.DropMode), TransferHandler.canImport(TransferHandler.TransferSupport)public int getNextMatch(String prefix, int startIndex, Position.Bias bias)
toString値を持つ次のリスト要素を返します。prefix - 一致をテストする文字列startIndex - 検索を開始するインデックスbias - 検索方向。Position.Bias.Forward、またはPosition.Bias.Backward。-1IllegalArgumentException - 接頭辞がnullまたはstartIndexが範囲外にある場合public String getToolTipText(MouseEvent event)
JComponentのgetToolTipTextをオーバーライドして、まずイベントが発生したセルのセル・レンダリング・コンポーネントをチェックし、ツールヒント・テキストがあれば、それを返します。この実装では、セル・レンダリング・コンポーネントに対してsetToolTipTextを使用することにより、セル・レベルでツールヒント・テキストを指定できます。
注意: JListがこの方法でレンダラのツールヒントを適切に表示するためには、JListがToolTipManagerに登録済のコンポーネントである必要があります。この登録は、コンストラクタで自動的に行われます。ただし、その後setToolTipText(null)の呼出しによりJListの登録が解除された場合、レンダリングからのヒントは表示されなくなります。
getToolTipText 、クラス: JComponentevent - ツールヒント・テキストを取得するMouseEventJComponent.setToolTipText(java.lang.String), JComponent.getToolTipText()public int locationToIndex(Point location)
getCellBoundsで提供されるセルの境界とを比較します。このメソッドは、モデルが空の場合、-1を返します
これは、リストのListUI内の同じ名前のメソッドに委譲するカバー・メソッドです。リストにListUIがない場合、-1を返します。
location - 点の座標-1public Point indexToLocation(int index)
nullを返します。
これは、リストのListUI内の同じ名前のメソッドに委譲するカバー・メソッドです。リストにListUIがない場合、nullを返します。
index - セルのインデックスnullpublic Rectangle getCellBounds(int index0, int index1)
小さいほうのインデックスがリストのセルの範囲外にある場合、このメソッドはnullを返します。小さいほうのインデックスが有効であっても、大きいほうのインデックスがリストの範囲外にある場合、最初のインデックスの境界だけが返されます。そうでない場合、有効な範囲の境界が返されます。
これは、リストのListUI内の同じ名前のメソッドに委譲するカバー・メソッドです。リストにListUIがない場合、nullを返します。
index0 - 範囲の1番目のインデックスindex1 - 範囲の2番目のインデックスnullpublic ListModel<E> getModel()
JListコンポーネントによって表示される項目のリストを保持するデータ・モデルを返します。ListModelsetModel(javax.swing.ListModel<E>)public void setModel(ListModel<E> model)
これはJavaBeansバウンド・プロパティです。
model - 表示される項目のリストを提供するListModelIllegalArgumentException - modelがnullである場合getModel(), clearSelection()public void setListData(E[] listData)
ListModelを構築し、このモデルを使ってsetModelを呼び出します。
このメソッドにnull値を渡そうとすると未定義の動作が発生し、さらに多くの場合は例外が発生します。作成されたモデルは、指定された配列を直接参照します。このメソッドの呼出し後に配列を変更しようとすると、不確定な動作が生じます。
listData - リストに表示する項目を保持するEの配列setModel(javax.swing.ListModel<E>)public void setListData(Vector<? extends E> listData)
Vectorから読取り専用ListModelを構築し、このモデルを使ってsetModelを呼び出します。
このメソッドにnull値を渡そうとすると未定義の動作が発生し、さらに多くの場合は例外が発生します。作成されたモデルは、指定されたVectorを直接参照します。このメソッドの呼出し後にVectorを変更しようとすると、不確定な動作が生じます。
listData - リストに表示する項目を保持するVectorsetModel(javax.swing.ListModel<E>)protected ListSelectionModel createSelectionModel()
DefaultListSelectionModelのインスタンスを返します。DefaultListSelecitonModelsetSelectionModel(javax.swing.ListSelectionModel), DefaultListSelectionModelpublic ListSelectionModel getSelectionModel()
ListSelectionModelsetSelectionModel(javax.swing.ListSelectionModel), ListSelectionModelprotected void fireSelectionValueChanged(int firstIndex,
int lastIndex,
boolean isAdjusting)
ListSelectionListenerに、選択モデルに変更が加えられたことを通知します。JListは、選択モデル内の選択に対する変更を待機し、このメソッドを呼び出すことにより、リストに直接追加されたリスナーに通知を送ります。
このメソッドは、このリストをソースとし、指定の引数を使って、ListSelectionEventを構築します。さらに、それを登録済みのListSelectionListenersに送信します。
firstIndex - 範囲内の最初のインデックス、<= lastIndexlastIndex - 範囲内の最後のインデックス、>= firstIndexisAdjusting - このイベントが変更中の一連のイベントに含まれているかどうかaddListSelectionListener(javax.swing.event.ListSelectionListener), removeListSelectionListener(javax.swing.event.ListSelectionListener), ListSelectionEvent, EventListenerListpublic void addListSelectionListener(ListSelectionListener listener)
JListは、選択モデルの選択状態の変更を待機し、指定されたリスナーに個々の変更を通知します。リスナーに送信されたListSelectionEventにより、sourceプロパティがこのリストに設定されます。listener - 追加するListSelectionListenergetSelectionModel(), getListSelectionListeners()public void removeListSelectionListener(ListSelectionListener listener)
listener - 削除するListSelectionListeneraddListSelectionListener(javax.swing.event.ListSelectionListener), getSelectionModel()public ListSelectionListener[] getListSelectionListeners()
addListSelectionListenerを使用してこのJListに追加されたすべてのListSelectionListenerの配列を返します。ListSelectionListener。追加されたリスナーがない場合は空の配列addListSelectionListener(javax.swing.event.ListSelectionListener)public void setSelectionModel(ListSelectionModel selectionModel)
selectionModelをnullではないListSelectionModel実装に設定します。選択モデルは、単一選択、隣接した範囲の選択、および非隣接選択を作成するタスクを処理します。
これはJavaBeansバウンド・プロパティです。
selectionModel - 選択を実装するListSelectionModelIllegalArgumentException - selectionModelがnullである場合getSelectionModel()public void setSelectionMode(int selectionMode)
使用可能な選択モードは、次のリストのとおりです。
ListSelectionModel.SINGLE_SELECTION - 1回に1つのリスト・インデックスのみを選択できます。このモードでは、setSelectionIntervalメソッドとaddSelectionIntervalメソッドは同等であり、どちらも現在の選択を、2番目の引数で表されるインデックス(「リード・インデックス」)で置き換えます。
ListSelectionModel.SINGLE_INTERVAL_SELECTION - 1回に1つの連続区間のみを選択できます。このモードでは、addSelectionIntervalは、指定された間隔が既存の選択範囲に隣接していたりオーバーラップしていたりしないかぎりsetSelectionIntervalと同様に動作するため(現在の選択を置き換える)、選択範囲を拡張する目的で使用できます。
ListSelectionModel.MULTIPLE_INTERVAL_SELECTION - このモードでは、選択対象に制限はありません。このモードがデフォルトです。
selectionMode - 選択モードIllegalArgumentException - 許可された選択モードでない場合getSelectionMode()public int getSelectionMode()
setSelectionMode(int)public int getAnchorSelectionIndex()
ListSelectionModel.getAnchorSelectionIndex()public int getLeadSelectionIndex()
ListSelectionModel.getLeadSelectionIndex()public int getMinSelectionIndex()
-1を返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。-1ListSelectionModel.getMinSelectionIndex()public int getMaxSelectionIndex()
-1を返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。ListSelectionModel.getMaxSelectionIndex()public boolean isSelectedIndex(int index)
trueを返し、それ以外の場合はfalseを返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。index - 選択状態が照会されるインデックスtrue、それ以外の場合はfalseListSelectionModel.isSelectedIndex(int), setSelectedIndex(int)public boolean isSelectionEmpty()
trueを返し、それ以外の場合はfalseを返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。true、それ以外の場合はfalseListSelectionModel.isSelectionEmpty(), clearSelection()public void clearSelection()
isSelectionEmptyはtrueを返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。public void setSelectionInterval(int anchor,
int lead)
anchorとleadの両方のインデックスが含まれます。anchorはlead以下でなくてもかまいません。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。
0より小さい値の処理方法については、使用する選択モデル・クラスのドキュメントを参照してください。
anchor - 選択する最初のインデックスlead - 選択する最後のインデックスListSelectionModel.setSelectionInterval(int, int), DefaultListSelectionModel.setSelectionInterval(int, int), createSelectionModel(), addSelectionInterval(int, int), removeSelectionInterval(int, int)public void addSelectionInterval(int anchor,
int lead)
anchorとleadの両方のインデックスが含まれます。anchorはlead以下でなくてもかまいません。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。
0より小さい値の処理方法については、使用する選択モデル・クラスのドキュメントを参照してください。
anchor - 選択に追加する最初のインデックスlead - 選択に追加する最後のインデックスListSelectionModel.addSelectionInterval(int, int), DefaultListSelectionModel.addSelectionInterval(int, int), createSelectionModel(), setSelectionInterval(int, int), removeSelectionInterval(int, int)public void removeSelectionInterval(int index0,
int index1)
index0とindex1の両方のインデックスが削除されます。index0はindex1以下でなくてもかまいません。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。
0より小さい値の処理方法については、使用する選択モデル・クラスのドキュメントを参照してください。
index0 - 選択から削除する最初のインデックスindex1 - 選択から削除する最後のインデックスListSelectionModel.removeSelectionInterval(int, int), DefaultListSelectionModel.removeSelectionInterval(int, int), createSelectionModel(), setSelectionInterval(int, int), addSelectionInterval(int, int)public void setValueIsAdjusting(boolean b)
valueIsAdjustingプロパティを設定します。trueの場合、選択モデルに対する複数の変更は、1つの変更の一部であると見なされるはずです。このプロパティは内部で使用され、開発者は通常、このメソッドを呼び出す必要はありません。たとえば、ユーザーのドラッグに応じてモデルが更新される場合、プロパティの値は、ドラッグの開始時にはtrue、終了時にはfalseに設定されます。このため、中間値をすべて処理するのではなく、変更がファイナライズされた場合にだけリスナーを更新できます。
一連の変更を1回の変更の一部と見なす必要がある場合は、これを直接使用できます。
これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。詳細は、ListSelectionModel.setValueIsAdjusting(boolean)のドキュメントを参照してください。
b - プロパティの変更後の値ListSelectionModel.setValueIsAdjusting(boolean), ListSelectionEvent.getValueIsAdjusting(), getValueIsAdjusting()public boolean getValueIsAdjusting()
isAdjustingプロパティの値を返します。
これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。
isAdjustingプロパティの値。setValueIsAdjusting(boolean), ListSelectionModel.getValueIsAdjusting()public int[] getSelectedIndices()
removeSelectionInterval(int, int), addListSelectionListener(javax.swing.event.ListSelectionListener)public void setSelectedIndex(int index)
setSelectionIntervalを使用する簡易メソッドです。0より小さい値の処理方法については、使用する選択モデル・クラスのドキュメントを参照してください。index - 選択するセルのインデックスListSelectionModel.setSelectionInterval(int, int), isSelectedIndex(int), addListSelectionListener(javax.swing.event.ListSelectionListener)public void setSelectedIndices(int[] indices)
addSelectionIntervalを使ってインデックスを追加する簡易メソッドです。0より小さい値の処理方法については、使用する選択モデル・クラスのドキュメントを参照してください。indices - 選択するセルのインデックスの配列、null以外NullPointerException - 指定された配列がnullである場合ListSelectionModel.addSelectionInterval(int, int), isSelectedIndex(int), addListSelectionListener(javax.swing.event.ListSelectionListener)@Deprecated public Object[] getSelectedValues()
getSelectedValuesList()に置き換えられていますisSelectedIndex(int), getModel(), addListSelectionListener(javax.swing.event.ListSelectionListener)public List<E> getSelectedValuesList()
isSelectedIndex(int), getModel(), addListSelectionListener(javax.swing.event.ListSelectionListener)public int getSelectedIndex()
-1を返します。
このメソッドは、getMinSelectionIndexに委譲するカバー・メソッドです。
getMinSelectionIndex(), addListSelectionListener(javax.swing.event.ListSelectionListener)public E getSelectedValue()
nullを返します。
これは、単純にgetMinSelectionIndexのモデル値を返す簡易メソッドです。
getMinSelectionIndex(), getModel(), addListSelectionListener(javax.swing.event.ListSelectionListener)public void setSelectedValue(Object anObject, boolean shouldScroll)
anObject - 選択するオブジェクトshouldScroll - オブジェクトが存在し、選択したオブジェクトを表示するためにリストをスクロールするべきである場合はtrue。そうでない場合はfalsepublic Dimension getPreferredScrollableViewportSize()
visibleRowCount行を表示するために必要なビュー・ポートのサイズを計算します。このメソッドの戻り値は、レイアウト方向によって異なります。
VERTICAL:
fixedCellWidthとfixedCellHeightの両方が設定されている場合(明示的に設定される場合と、セルのプロトタイプ値を指定して設定される場合がある)、この値は明らかです。幅は、単純にfixedCellWidthにリストの水平のイン・セットを足し合わせた値になります。高さは、fixedCellHeightにvisibleRowCountを掛けて、リストの垂直のイン・セットを足し合わせた値になります。
fixedCellWidthとfixedCellHeightのどちらかが指定されていない場合、ヒューリスティックな方法が使用されます。モデルが空であり、幅が0より大きいか、またはハードコードされた値256である場合、幅はfixedCellWidthになります。fixedCellHeightが0より大きい場合、高さはfixedCellHeightにvisibleRowCountを掛けた値になります。そうでない場合は、ハードコードされた値16にvisibleRowCountを掛けた値になります。
モデルが空でなければ、幅は推奨サイズの幅(通常、もっとも幅の広いリスト要素の幅)になります。高さは、fixedCellHeightにvisibleRowCountを掛けて、リストの垂直のイン・セットを足し合わせた値になります。
VERTICAL_WRAPまたはHORIZONTAL_WRAP:
このメソッドは、単純にgetPreferredSizeから値を返します。リストのListUIは、getPreferredSizeをオーバーライドして、適切な値を返す必要があります。
getPreferredScrollableViewportSize 、インタフェース: ScrollablevisibleRowCount行の表示に必要なビュー・ポートのサイズを含む寸法getPreferredScrollableViewportSize(), setPrototypeCellValue(E)public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
水平方向のスクロールでは、レイアウトの方向がVERTICALである場合、リストのフォント・サイズ(フォントがnullの場合は1)が返されます。
getScrollableUnitIncrement 、インタフェース: ScrollablevisibleRect - ビュー・ポート内の可視のビュー領域orientation - SwingConstants.HORIZONTALまたはSwingConstants.VERTICALdirection - 上または左にスクロールする場合は0以下、下または右にスクロールする場合は0より大きいIllegalArgumentException - visibleRectがnull、またはorientationがSwingConstants.VERTICALまたはSwingConstants.HORIZONTALのいずれでもない場合。getScrollableBlockIncrement(java.awt.Rectangle, int, int), Scrollable.getScrollableUnitIncrement(java.awt.Rectangle, int, int)public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
垂直方向のスクロールには、次のルールが適用されます。
visibleRect.heightを返す
水平方向のスクロールで、レイアウト方向がVERTICAL_WRAPまたはHORIZONTAL_WRAPである場合、次のルールが適用されます。
visibleRect.widthを返す
水平方向のスクロールで、レイアウト方向がVERTICALである場合、visibleRect.widthを返します。
visibleRectの値は、this.getVisibleRect()と同じである必要があります。
getScrollableBlockIncrement 、インタフェース: ScrollablevisibleRect - ビュー・ポート内の可視のビュー領域orientation - SwingConstants.HORIZONTALまたはSwingConstants.VERTICALdirection - 上または左にスクロールする場合は0以下、下または右にスクロールする場合は0より大きいIllegalArgumentException - visibleRectがnull、またはorientationがSwingConstants.VERTICALまたはSwingConstants.HORIZONTALのいずれでもない場合。getScrollableUnitIncrement(java.awt.Rectangle, int, int), Scrollable.getScrollableBlockIncrement(java.awt.Rectangle, int, int)public boolean getScrollableTracksViewportWidth()
JListがJViewport内に表示され、ビュー・ポートの幅がリストの適切な幅よりも広い場合、またはレイアウト方向がHORIZONTAL_WRAPでvisibleRowCount <= 0である場合はtrueを返します。それ以外の場合はfalseを返します。
falseの場合、ビュー・ポートの幅を追跡しません。これにより、JViewport自体がJScrollPaneに組み込まれている場合、水平スクロールができるようになります。
getScrollableTracksViewportWidth 、インタフェース: ScrollableScrollable.getScrollableTracksViewportWidth()public boolean getScrollableTracksViewportHeight()
JListがJViewport内に表示され、ビュー・ポートの幅がリストの適切な高さよりも高い場合、またはレイアウト方向がVERTICAL_WRAPでvisibleRowCount <= 0である場合はtrueを返します。それ以外の場合はfalseを返します。
falseの場合、ビュー・ポートの高さを追跡しません。これにより、JViewport自体がJScrollPaneに組み込まれている場合、垂直スクロールができるようになります。
getScrollableTracksViewportHeight 、インタフェース: ScrollableScrollable.getScrollableTracksViewportHeight()protected String paramString()
JListのString表現を返します。このメソッドはデバッグ専用であり、返されるStringの内容および形式は実装によって異なります。返されるStringは空の場合がありますが、nullにはなりません。paramString 、クラス: JComponentJListのString表現。public AccessibleContext getAccessibleContext()
JListに関連付けられているAccessibleContextを取得します。JListの場合、AccessibleContextはAccessibleJListの形式を取ります。
必要に応じて、新しいAccessibleJListインスタンスが作成されます。
getAccessibleContext 、インタフェース: AccessiblegetAccessibleContext、クラス: ComponentJListのAccessibleContextとして機能するAccessibleJList バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.