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.AccessibleJComponent
Container.AccessibleAWTContainer
Component.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_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, 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, update
add, 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, validateTree
action, 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, transferFocusUpCycle
public 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-null
public 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
、クラス: JComponent
JComponent.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
- リストのセルをペイントするListCellRenderer
getCellRenderer()
public Color getSelectionForeground()
ListUI
実装によってインストールされたレンダリングと同様に、DefaultListCellRenderer
は、この色を使って、選択されている項目のフォアグラウンドをレンダリングします。setSelectionForeground(java.awt.Color)
, DefaultListCellRenderer
public void setSelectionForeground(Color selectionForeground)
ListUI
実装によってインストールされたレンダリングと同様に、DefaultListCellRenderer
は、この色を使って、選択されている項目のフォアグラウンドをレンダリングします。
このプロパティのデフォルト値は、Look & Feelの実装によって定義されます。
これはJavaBeansバウンド・プロパティです。
selectionForeground
- 選択されたリスト項目のフォアグラウンドで使用するColor
getSelectionForeground()
, setSelectionBackground(java.awt.Color)
, JComponent.setForeground(java.awt.Color)
, JComponent.setBackground(java.awt.Color)
, JComponent.setFont(java.awt.Font)
, DefaultListCellRenderer
public Color getSelectionBackground()
ListUI
実装によってインストールされたレンダリングと同様に、DefaultListCellRenderer
は、この色を使って、選択されている項目のバックグラウンドをレンダリングします。setSelectionBackground(java.awt.Color)
, DefaultListCellRenderer
public void setSelectionBackground(Color selectionBackground)
ListUI
実装によってインストールされたレンダリングと同様に、DefaultListCellRenderer
は、この色を使って、選択されている項目のバックグラウンドを塗りつぶします。
このプロパティのデフォルト値は、Look & Feelの実装によって定義されます。
これはJavaBeansバウンド・プロパティです。
selectionBackground
- 選択されたセルのバックグラウンドで使用するColor
getSelectionBackground()
, setSelectionForeground(java.awt.Color)
, JComponent.setForeground(java.awt.Color)
, JComponent.setBackground(java.awt.Color)
, JComponent.setFont(java.awt.Font)
, DefaultListCellRenderer
public 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()
, JViewport
public 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)
, TransferHandler
public boolean getDragEnabled()
dragEnabled
プロパティの値setDragEnabled(boolean)
public final void setDropMode(DropMode dropMode)
DropMode.USE_SELECTION
になっています。ただし、ユーザー側の操作を改善する場合は、ほかのモードを使用することをお勧めします。たとえば、DropMode.ON
は、リスト内の実際の選択内容に影響を及ぼすことなく、選択されたように項目を表示する動作と似た動作を提供します。
JList
は次のドロップ・モードをサポートしています。
DropMode.USE_SELECTION
DropMode.ON
DropMode.INSERT
DropMode.ON_OR_INSERT
TransferHandler
を持っていなければ、ドロップ・モードの効果はありません。dropMode
- 使用するドロップ・モードIllegalArgumentException
- ドロップ・モードがサポートされていないかnull
の場合getDropMode()
, getDropLocation()
, JComponent.setTransferHandler(javax.swing.TransferHandler)
, TransferHandler
public 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。-1
IllegalArgumentException
- 接頭辞がnull
またはstartIndexが範囲外にある場合public String getToolTipText(MouseEvent event)
JComponent
のgetToolTipText
をオーバーライドして、まずイベントが発生したセルのセル・レンダリング・コンポーネントをチェックし、ツールヒント・テキストがあれば、それを返します。この実装では、セル・レンダリング・コンポーネントに対してsetToolTipText
を使用することにより、セル・レベルでツールヒント・テキストを指定できます。
注意: JList
がこの方法でレンダラのツールヒントを適切に表示するためには、JList
がToolTipManager
に登録済のコンポーネントである必要があります。この登録は、コンストラクタで自動的に行われます。ただし、その後setToolTipText(null)
の呼出しによりJList
の登録が解除された場合、レンダリングからのヒントは表示されなくなります。
getToolTipText
、クラス: JComponent
event
- ツールヒント・テキストを取得するMouseEvent
JComponent.setToolTipText(java.lang.String)
, JComponent.getToolTipText()
public int locationToIndex(Point location)
getCellBounds
で提供されるセルの境界とを比較します。このメソッドは、モデルが空の場合、-1
を返します
これは、リストのListUI
内の同じ名前のメソッドに委譲するカバー・メソッドです。リストにListUI
がない場合、-1
を返します。
location
- 点の座標-1
public Point indexToLocation(int index)
null
を返します。
これは、リストのListUI
内の同じ名前のメソッドに委譲するカバー・メソッドです。リストにListUI
がない場合、null
を返します。
index
- セルのインデックスnull
public Rectangle getCellBounds(int index0, int index1)
小さいほうのインデックスがリストのセルの範囲外にある場合、このメソッドはnull
を返します。小さいほうのインデックスが有効であっても、大きいほうのインデックスがリストの範囲外にある場合、最初のインデックスの境界だけが返されます。そうでない場合、有効な範囲の境界が返されます。
これは、リストのListUI
内の同じ名前のメソッドに委譲するカバー・メソッドです。リストにListUI
がない場合、null
を返します。
index0
- 範囲の1番目のインデックスindex1
- 範囲の2番目のインデックスnull
public ListModel<E> getModel()
JList
コンポーネントによって表示される項目のリストを保持するデータ・モデルを返します。ListModel
setModel(javax.swing.ListModel<E>)
public void setModel(ListModel<E> model)
これはJavaBeansバウンド・プロパティです。
model
- 表示される項目のリストを提供するListModel
IllegalArgumentException
- 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
- リストに表示する項目を保持するVector
setModel(javax.swing.ListModel<E>)
protected ListSelectionModel createSelectionModel()
DefaultListSelectionModel
のインスタンスを返します。DefaultListSelecitonModel
setSelectionModel(javax.swing.ListSelectionModel)
, DefaultListSelectionModel
public ListSelectionModel getSelectionModel()
ListSelectionModel
setSelectionModel(javax.swing.ListSelectionModel)
, ListSelectionModel
protected void fireSelectionValueChanged(int firstIndex, int lastIndex, boolean isAdjusting)
ListSelectionListener
に、選択モデルに変更が加えられたことを通知します。JList
は、選択モデル内の選択に対する変更を待機し、このメソッドを呼び出すことにより、リストに直接追加されたリスナーに通知を送ります。
このメソッドは、このリストをソースとし、指定の引数を使って、ListSelectionEvent
を構築します。さらに、それを登録済みのListSelectionListeners
に送信します。
firstIndex
- 範囲内の最初のインデックス、<= lastIndex
lastIndex
- 範囲内の最後のインデックス、>= firstIndex
isAdjusting
- このイベントが変更中の一連のイベントに含まれているかどうかaddListSelectionListener(javax.swing.event.ListSelectionListener)
, removeListSelectionListener(javax.swing.event.ListSelectionListener)
, ListSelectionEvent
, EventListenerList
public void addListSelectionListener(ListSelectionListener listener)
JList
は、選択モデルの選択状態の変更を待機し、指定されたリスナーに個々の変更を通知します。リスナーに送信されたListSelectionEvent
により、source
プロパティがこのリストに設定されます。listener
- 追加するListSelectionListener
getSelectionModel()
, getListSelectionListeners()
public void removeListSelectionListener(ListSelectionListener listener)
listener
- 削除するListSelectionListener
addListSelectionListener(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
- 選択を実装するListSelectionModel
IllegalArgumentException
- 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
を返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。-1
ListSelectionModel.getMinSelectionIndex()
public int getMaxSelectionIndex()
-1
を返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。ListSelectionModel.getMaxSelectionIndex()
public boolean isSelectedIndex(int index)
true
を返し、それ以外の場合はfalse
を返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。index
- 選択状態が照会されるインデックスtrue
、それ以外の場合はfalse
ListSelectionModel.isSelectedIndex(int)
, setSelectedIndex(int)
public boolean isSelectionEmpty()
true
を返し、それ以外の場合はfalse
を返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバー・メソッドです。true
、それ以外の場合はfalse
ListSelectionModel.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
。そうでない場合はfalse
public 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
、インタフェース: Scrollable
visibleRowCount
行の表示に必要なビュー・ポートのサイズを含む寸法getPreferredScrollableViewportSize()
, setPrototypeCellValue(E)
public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
水平方向のスクロールでは、レイアウトの方向がVERTICAL
である場合、リストのフォント・サイズ(フォントがnull
の場合は1
)が返されます。
getScrollableUnitIncrement
、インタフェース: Scrollable
visibleRect
- ビュー・ポート内の可視のビュー領域orientation
- SwingConstants.HORIZONTAL
またはSwingConstants.VERTICAL
direction
- 上または左にスクロールする場合は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
、インタフェース: Scrollable
visibleRect
- ビュー・ポート内の可視のビュー領域orientation
- SwingConstants.HORIZONTAL
またはSwingConstants.VERTICAL
direction
- 上または左にスクロールする場合は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
、インタフェース: Scrollable
Scrollable.getScrollableTracksViewportWidth()
public boolean getScrollableTracksViewportHeight()
JList
がJViewport
内に表示され、ビュー・ポートの幅がリストの適切な高さよりも高い場合、またはレイアウト方向がVERTICAL_WRAP
でvisibleRowCount <= 0
である場合はtrue
を返します。それ以外の場合はfalse
を返します。
false
の場合、ビュー・ポートの高さを追跡しません。これにより、JViewport
自体がJScrollPane
に組み込まれている場合、垂直スクロールができるようになります。
getScrollableTracksViewportHeight
、インタフェース: Scrollable
Scrollable.getScrollableTracksViewportHeight()
protected String paramString()
JList
のString
表現を返します。このメソッドはデバッグ専用であり、返されるString
の内容および形式は実装によって異なります。返されるString
は空の場合がありますが、null
にはなりません。paramString
、クラス: JComponent
JList
のString
表現。public AccessibleContext getAccessibleContext()
JList
に関連付けられているAccessibleContext
を取得します。JList
の場合、AccessibleContext
はAccessibleJList
の形式を取ります。
必要に応じて、新しいAccessibleJList
インスタンスが作成されます。
getAccessibleContext
、インタフェース: Accessible
getAccessibleContext
、クラス: Component
JList
のAccessibleContext
として機能するAccessibleJList
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.