Java プラットフォーム 1.2

javax.swing
クラス JList

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JList

public class JList
extends JComponent
implements Scrollable, Accessible

ユーザがリストから 1 つまたは複数のオブジェクトを選択するためのコンポーネントです。別のモデルである ListModel は、リストの内容を表します。ListModel のインスタンスを生成する JList コンストラクタを使用すれば、オブジェクトの配列またはベクトルを簡単に表示できます。

 // Create a JList that displays the strings in data[]

 String[] data = {"one", "two", "free", "four"};
 JList dataList = new JList(data);
 
 // The value of the JList model property is an object that provides
 // a read-only view of the data.  It was constructed automatically.

 for(int i = 0; i < dataList.getModel().getSize(); i++) {
     System.out.println(dataList.getModel().getElementAt(i));
 }

 // Create a JList that displays the superclass of JList.class.
 //   We store the superclasses in a java.util.Vector.

 Vector superClasses = new Vector();
 Class rootClass = javax.swing.JList.class;
 for(Class cls = rootClass; cls != null; cls = cls.getSuperclass()) {
     superClasses.addElement(cls);
 }
 JList classList = new JList(superClasses);
 

JList はスクロールを直接サポートしていません。スクロールリストを作成するには、JList を JScrollPane のビューポートビューとして設定します。

 JScrollPane scrollPane = new JScrollPane(dataList);
 // Or in two steps:
 JScrollPane scrollPane = new JScrollPane();
 scrollPane.getViewport().setView(dataList);
 

デフォルトでは、JList は単一選択をサポートします (0 または 1 インデックスを選択できる)。選択状態は、ListSelectionModel の実装である個別の委譲オブジェクトによって管理されますが、JList は、選択を管理するための簡易プロパティを提供しています。

 String[] data = {"one", "two", "free", "four"};
 JList dataList = new JList(data);

 dataList.setSelectedIndex(1);  // select "two"
 dataList.getSelectedValue();   // returns "two"
 

JList の内容は動的です。つまり、JList の作成後にリスト要素の値やリストのサイズを変更できます。JList は、swing.event.ListDataListener 実装によってモデルの変更を監視します。ListModel が正しく実装されていれば、変更が発生するたびにリスナーに通知します。変更は、修正、追加、または削除されたリストインデックスの範囲を識別する swing.event.ListDataEvent によって記述されます。単純な動的内容の JList アプリケーションは、DefaultListModel クラスを使用してリスト要素を格納できます。このクラスは、ListModel インタフェースを実装し、java.util.Vector API も提供します。カスタム ListModel 実装を提供する必要があるアプリケーションは、基本的な ListDataListener サポートを提供する AbstractListModel をサブクラス化することができます。次に例を示します。

 // This list model has about 2^16 elements.  Enjoy scrolling.

 ListModel bigData = new AbstractListModel() {
     public int getSize() { return Short.MAX_VALUE; }
     public Object getElementAt(int index) { return "Index " + index; }
 };

 JList bigDataList = new List(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 は、cellRenderer を呼び出す委譲によって提供される java.awt.Component を使用して、リスト内で可視セルを描画します。可視な各行は、セルレンダリングコンポーネントを「ゴムスタンプ」のように使用して描画されます。JList は、セルを描画する必要があるたびに、セルレンダリングにコンポーネントを要求し、setBounds() を使用して適切な場所に配置してから、レンダリングの描画メソッドを呼び出して描画します。デフォルトのセルレンダリングは、JLabel コンポーネントを使用して、各コンポーネントの文字列値を描画します。次のようなコードにより、自分のセルレンダリングを使用することもできます。

  // Display an icon and a string for each object in the list.

 class MyCellRenderer extends JLabel implements ListCellRenderer {
     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,
       Object value,            // value to display
       int index,               // cell index
       boolean isSelected,      // is the cell selected
       boolean cellHasFocus)    // the list and the cell have the focus
     {
        String s = value.toString();
         setText(s);
         setIcon((s.length > 10) ? longIcon : shortIcon);
      return this;
     }
 }

 String[] data = {"one", "two", "free", "four"};
 JList dataList = new JList(data);
 dataList.setCellRenderer(new MyCellRenderer());
 

JList は、ダブルクリックやトリプル (およびそれ以上の回数の) クリックを特別にはサポートしていませんが、MouseListener を利用すればそれらを簡単に処理することができます。クリックされたセルを調べるには、JListlocationToIndex() メソッドを使用します。次に例を示します。

 final JList list = new JList(dataModel);
 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);
 
この例では、JList 変数が匿名の MouseListener クラスによって参照されているため、その値は final となっています。

標準の Look & Feel (L&F) 表現でこのコンポーネントが使用するキーボードのキーについては、JList のキーの割り当てを参照してください。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。

関連項目:
ListModel, AbstractListModel, DefaultListModel, ListSelectionModel, DefaultListSelectionModel, ListCellRenderer, 直列化された形式

内部クラスの概要
protected  class JList.AccessibleJList
          このオブジェクトのユーザ補助機能を取得するために使用するクラスです。
 
クラス javax.swing.JComponent から継承した内部クラス
JComponent.AccessibleJComponent
 
クラス javax.swing.JComponent から継承したフィールド
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
クラス java.awt.Component から継承したフィールド
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
コンストラクタの概要
JList()
          空のモデルで JList を構築します。
JList(ListModel dataModel)
          指定された null 以外のモデルの要素を表示する JList を構築します。
JList(Object[] listData)
          指定された配列の要素を表示する JList を構築します。
JList(Vector listData)
          指定されたベクトルの要素を表示する JList を構築します。
 
メソッドの概要
 void addListSelectionListener(ListSelectionListener listener)
          選択物が変更されるたびに通知されるリストにリスナーを追加します。
 void addSelectionInterval(int anchor, int lead)
          指定された区間を現在の選択物に加えます。
 void clearSelection()
          選択をクリアします。
protected  ListSelectionModel createSelectionModel()
          DefaultListSelectionModel のインスタンスを返します。
 void ensureIndexIsVisible(int index)
          この JList が JViewport 内で表示されていて、指定されたセルが完全に可視ではない場合に、ビューポートをスクロールします。
protected  void fireSelectionValueChanged(int firstIndex, int lastIndex, boolean isAdjusting)
          このメソッドは、選択モデルが変更されたことを JList の ListSelectionListeners に通知します。
 AccessibleContext getAccessibleContext()
          この JComponent に関連付けられている AccessibleContext を取得します。
 int getAnchorSelectionIndex()
          最後の addSelectionInterval または setSelectionInterval 呼び出しにおける最初のインデックス引数を返します。
 Rectangle getCellBounds(int index1, int index2)
          JList 座標で指定された項目範囲の境界を返します。
 ListCellRenderer getCellRenderer()
          リスト項目を描画するオブジェクトを返します。
 int getFirstVisibleIndex()
          JList の左上隅にあるセルのインデックスを返します。
 int getFixedCellHeight()
          固定セル高値を返します。
 int getFixedCellWidth()
          固定セル幅値を返します。
 int getLastVisibleIndex()
          JList の右下隅にあるセルのインデックスを返します。
 int getLeadSelectionIndex()
          最後の addSelectionInterval または setSelectionInterval 呼び出しにおける 2 番目のインデックス引数を返します。
 int getMaxSelectionIndex()
          選択されているセルの最大インデックスを返します。
 int getMinSelectionIndex()
          選択されているセルの最小インデックスを返します。
 ListModel getModel()
          JList コンポーネントによって表示される項目のリストを保持するデータモデルを返します。
 Dimension getPreferredScrollableViewportSize()
          visibleRowCount の行を表示するために必要なビューポートのサイズを計算します。
 Object getPrototypeCellValue()
          プロトタイプセルはセル幅の計算に使用されます。
 int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
          ブロックの増分量を返します。
 boolean getScrollableTracksViewportHeight()
          この JList が JViewport に表示されている場合には、ビューポート高の変更時にリストの高さを変更しません。
 boolean getScrollableTracksViewportWidth()
          この JList が JViewport に表示されている場合には、ビューポート幅の変更時にリストの幅を変更しません。
 int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
          水平スクロール: リストのフォントサイズを返します。
 int getSelectedIndex()
          選択されている最初のインデックスを返す簡易メソッドです。
 int[] getSelectedIndices()
          選択されているすべてのインデックスの昇順配列を返します。
 Object getSelectedValue()
          選択されている最初の値を返す簡易メソッドです。
 Object[] getSelectedValues()
          選択されたセルの値の配列を返します。
 Color getSelectionBackground()
          選択されたセルのバックグラウンドカラーを返します。
 Color getSelectionForeground()
          フォアグラウンドカラーを返します。
 int getSelectionMode()
          単一項目選択または複数項目選択のどちらが許可されているかを返します。
 ListSelectionModel getSelectionModel()
          現在の選択モデルの値を返します。
 ListUI getUI()
          このコンポーネントを描画する L&F オブジェクトを返します。
 String getUIClassID()
          このコンポーネントの Look & Feel を構築する UIFactory クラスの名前を返します。
 boolean getValueIsAdjusting()
          データモデルの isAdjusting プロパティの値を返します。
 int getVisibleRowCount()
          可視行の適切な数を返します。
 Point indexToLocation(int index)
          JList 座標で指定された項目の原点を返します。
 boolean isSelectedIndex(int index)
          指定されたインデックスが選択されている場合は true を返します。
 boolean isSelectionEmpty()
          何も選択されていない場合は true を返します。
 int locationToIndex(Point location)
          JList 座標上のポイントを、その位置のセルのインデックスに変換します。
protected  String paramString()
          この JList の文字列表現を返します。
 void removeListSelectionListener(ListSelectionListener listener)
          選択物が変更されるたびに通知されるリストからリスナーを削除します。
 void removeSelectionInterval(int index0, int index1)
          指定された区間を現在の選択物から削除します。
 void setCellRenderer(ListCellRenderer cellRenderer)
          リスト内の各セルを描画する委譲を設定します。
 void setFixedCellHeight(int height)
          この値が 0 より大きい場合は、この値がリスト内の各セルの高さになります。
 void setFixedCellWidth(int width)
          この値が 0 より大きい場合は、この値がリスト内の各セルの幅になります。
 void setListData(Object[] listData)
          Object の配列から ListModel を構築し、setModel を適用する簡易メソッドです。
 void setListData(Vector listData)
          ベクトルから ListModel を構築して、setModel を適用する簡易メソッドです。
 void setModel(ListModel model)
          リストの内容または「値」を表すモデルを設定し、PropertyChangeListeners への通知後にリストの選択物をクリアします。
 void setPrototypeCellValue(Object prototypeCellValue)
          この値が null でなければ、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)
          このコンポーネントを描画する L&F オブジェクトを設定します。
 void setValueIsAdjusting(boolean b)
          データモデルの isAdjusting プロパティを true に設定し、すべての選択イベント (選択モードでリスト項目上をマウスでドラッグしている場合など) が完了した時点で単一イベントが生成されるようにします。
 void setVisibleRowCount(int visibleRowCount)
          スクロールバーを使用せずに表示できるリスト内の行の適切な数を設定します。
 void updateUI()
          現在のデフォルトの UIFactory から取得した ListUI で UI プロパティを設定します。
 
クラス javax.swing.JComponent から継承したメソッド
addAncestorListener, addNotify, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getGraphics, getHeight, getInsets, getInsets, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, isDoubleBuffered, isFocusCycleRoot, isFocusTraversable, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, processComponentKeyEvent, processFocusEvent, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFont, setForeground, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVisible, unregisterKeyboardAction, update
 
クラス java.awt.Container から継承したメソッド
add, add, add, add, add, addContainerListener, addImpl, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getLayout, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setLayout, validate, validateTree
 
クラス java.awt.Component から継承したメソッド
action, add, addComponentListener, addFocusListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hide, imageUpdate, inside, isDisplayable, isEnabled, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processInputMethodEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

JList

public JList(ListModel dataModel)
指定された null 以外のモデルの要素を表示する JList を構築します。すべての JList コンストラクタは、このオブジェクトに委譲します。

JList

public JList(Object[] listData)
指定された配列の要素を表示する JList を構築します。このコンストラクタは、ListModel コンストラクタに委譲します。

JList

public JList(Vector listData)
指定されたベクトルの要素を表示する JList を構築します。このコンストラクタは、ListModel コンストラクタに委譲します。

JList

public JList()
空のモデルで JList を構築します。
メソッドの詳細

getUI

public ListUI getUI()
このコンポーネントを描画する L&F オブジェクトを返します。
戻り値:
このコンポーネントを描画する ListUI オブジェクト

setUI

public void setUI(ListUI ui)
このコンポーネントを描画する L&F オブジェクトを設定します。
パラメータ:
ui - ListUI L&F オブジェクト
関連項目:
UIDefaults.getUI(javax.swing.JComponent)

updateUI

public void updateUI()
現在のデフォルトの UIFactory から取得した ListUI で UI プロパティを設定します。このメソッドは JList コンストラクタによって呼び出され、リストの Look & Feel を実行時に更新します。
オーバーライド:
クラス JComponent 内の updateUI
関連項目:
UIManager.getUI(javax.swing.JComponent)

getUIClassID

public String getUIClassID()
このコンポーネントの Look & Feel を構築する UIFactory クラスの名前を返します。
戻り値:
"ListUI"
オーバーライド:
クラス JComponent 内の getUIClassID
関連項目:
JComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)

getPrototypeCellValue

public Object getPrototypeCellValue()
プロトタイプセルはセル幅の計算に使用されます。「プロトタイプセル」のセル幅を返します。他のすべてのリスト項目と同じ値を持つため、リストのそれぞれの項目の内容を調べる計算の代わりに用いられます。
戻り値:
prototypeCellValue プロパティの値
関連項目:
setPrototypeCellValue(java.lang.Object)

setPrototypeCellValue

public void setPrototypeCellValue(Object prototypeCellValue)
この値が null でなければ、fixedCellWidth および fixedCellHeight 値の計算に使用します。インデックス 0 の cellRenderer を指定値に設定してから、レンダリングコンポーネントの優先サイズを計算します。リストが長すぎて JList が各セルの幅と高さを計算できず、他のセルと同じスペースを持つことがわかっているセルがある場合には、このプロパティが便利です。

このプロパティのデフォルト値は null です。

これは JavaBeans のバウンドプロパティです。ここでは fixedCellWidth および fixedCellHeight プロパティを設定しますが、prototypeCellValue PropertyChangeEvent のみがトリガーされます。

パラメータ:
prototypeCellValue - fixedCellWidth および fixedCellHeight のベースとなる値
関連項目:
getPrototypeCellValue(), setFixedCellWidth(int), setFixedCellHeight(int), JComponent.addPropertyChangeListener(java.beans.PropertyChangeListener)

getFixedCellWidth

public int getFixedCellWidth()
固定セル幅値を返します。固定セル幅値とは、リスト要素から計算された値ではなく、fixedCellWidth プロパティで指定されている値です。
戻り値:
固定セル幅
関連項目:
setFixedCellWidth(int)

setFixedCellWidth

public void setFixedCellWidth(int width)
この値が 0 より大きい場合は、この値がリスト内の各セルの幅になります。そうでない場合は、getPreferredSize() プロパティを cellRenderer コンポーネントに適用することによって、セル幅を計算します。

このプロパティのデフォルト値は -1 です。

これは JavaBeans のバウンドプロパティです。

パラメータ:
width - リスト内のすべてのセルの幅
関連項目:
getPrototypeCellValue(), setFixedCellWidth(int), JComponent.addPropertyChangeListener(java.beans.PropertyChangeListener)

getFixedCellHeight

public int getFixedCellHeight()
固定セル高値を返します。固定セル高値とは、リスト要素から計算された値ではなく、fixedCellHeight プロパティで指定されている値です。
戻り値:
固定セル高
関連項目:
setFixedCellHeight(int)

setFixedCellHeight

public void setFixedCellHeight(int height)
この値が 0 より大きい場合は、この値がリスト内の各セルの高さになります。そうでない場合は、getPreferredSize() プロパティを cellRenderer コンポーネントに適用することによって、セルの高さを計算します。

このプロパティのデフォルト値は -1 です。

これは JavaBeans のバウンドプロパティです。

パラメータ:
height - リスト内のすべてのセルの高さをピクセル数で指定する int 値
関連項目:
getPrototypeCellValue(), setFixedCellWidth(int), JComponent.addPropertyChangeListener(java.beans.PropertyChangeListener)

getCellRenderer

public ListCellRenderer getCellRenderer()
リスト項目を描画するオブジェクトを返します。
戻り値:
ListCellRenderer
関連項目:
setCellRenderer(javax.swing.ListCellRenderer)

setCellRenderer

public void setCellRenderer(ListCellRenderer cellRenderer)
リスト内の各セルを描画する委譲を設定します。prototypeCellValue が設定されていれば、fixedCellWidth および fixedCellHeight プロパティも設定されます。しかし、cellRenderer プロパティに対しては PropertyChangeEvent は 1 つだけ生成されます。

このプロパティのデフォルト値は ListUI 委譲 (Look & Feel の実装) によって提供されます。

これは JavaBeans のバウンドプロパティです。

パラメータ:
cellRenderer - リスト内のセルを描画する ListCellRenderer
関連項目:
getCellRenderer()

getSelectionForeground

public Color getSelectionForeground()
フォアグラウンドカラーを返します。
戻り値:
フォアグラウンドプロパティ用の Color オブジェクト
関連項目:
setSelectionForeground(java.awt.Color), setSelectionBackground(java.awt.Color)

setSelectionForeground

public void setSelectionForeground(Color selectionForeground)
選択されたセルのフォアグラウンドカラーを設定します。セルレンダリングは、この色を使用して、選択されているセルのテキストとグラフィックスを描画します。

このプロパティのデフォルト値は、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)

getSelectionBackground

public Color getSelectionBackground()
選択されたセルのバックグラウンドカラーを返します。
戻り値:
選択されたリスト項目のバックグラウンドに使用する Color
関連項目:
setSelectionBackground(java.awt.Color), setSelectionForeground(java.awt.Color)

setSelectionBackground

public void setSelectionBackground(Color selectionBackground)
選択されたセルのバックグラウンドカラーを設定します。セルレンダリングは、この色を使用して、選択されているセルを塗りつぶします。

このプロパティのデフォルト値は、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)

getVisibleRowCount

public int getVisibleRowCount()
可視行の適切な数を返します。
戻り値:
スクロールバーを使用せずに表示できる行の適切な数を示す int 値
関連項目:
setVisibleRowCount(int)

setVisibleRowCount

public void setVisibleRowCount(int visibleRowCount)
スクロールバーを使用せずに表示できるリスト内の行の適切な数を設定します。この値は、もっとも近い JViewport の祖先 (存在する場合のみ) によって決定されます。このプロパティ値は、JList preferredScrollableViewportSize の値にのみ影響します。

このプロパティのデフォルト値は 8 です。

これは JavaBeans のバウンドプロパティです。

パラメータ:
visibleRowCount - 可視行の適切な数を指定する int 値
関連項目:
getVisibleRowCount(), JComponent.getVisibleRect(), JViewport

getFirstVisibleIndex

public int getFirstVisibleIndex()
JList の左上隅にあるセルのインデックスを返します。どのセルも可視ではない場合やリストが空である場合には -1 を返します。セルは部分的に可視でもかまいません。
戻り値:
最初の可視セルのインデックスを表す int 値
関連項目:
getLastVisibleIndex(), JComponent.getVisibleRect()

getLastVisibleIndex

public int getLastVisibleIndex()
JList の右下隅にあるセルのインデックスを返します。どのセルも可視ではない場合やリストが空である場合には -1 を返します。セルは部分的に可視でもかまいません。
戻り値:
最後の可視セルのインデックスを表す int 値
関連項目:
getLastVisibleIndex(), JComponent.getVisibleRect()

ensureIndexIsVisible

public void ensureIndexIsVisible(int index)
この JList が JViewport 内で表示されていて、指定されたセルが完全に可視ではない場合に、ビューポートをスクロールします。
パラメータ:
index - 可視にするセルのインデックスを表す int 値
関連項目:
JComponent.scrollRectToVisible(java.awt.Rectangle), JComponent.getVisibleRect()

locationToIndex

public int locationToIndex(Point location)
JList 座標上のポイントを、その位置のセルのインデックスに変換します。指定位置にセルが存在しない場合には -1 を返します。
パラメータ:
location - セルの JList 相対座標
戻り値:
指定位置のセルのインデックスを表す int 値。または -1

indexToLocation

public Point indexToLocation(int index)
JList 座標で指定された項目の原点を返します。インデックスが無効な場合は null を返します。
パラメータ:
index - JList セルのインデックス
戻り値:
インデックスで指定されたセルの原点

getCellBounds

public Rectangle getCellBounds(int index1,
                               int index2)
JList 座標で指定された項目範囲の境界を返します。インデックスが無効な場合は null を返します。
パラメータ:
index1 - 範囲内の最初の JList セルのインデックス
index2 - 範囲内の最後の JList セルのインデックス
戻り値:
インデックスで指定されたセルの境界

getModel

public ListModel getModel()
JList コンポーネントによって表示される項目のリストを保持するデータモデルを返します。
戻り値:
表示項目リストを提供する ListModel
関連項目:
setModel(javax.swing.ListModel)

setModel

public void setModel(ListModel model)
リストの内容または「値」を表すモデルを設定し、PropertyChangeListeners への通知後にリストの選択物をクリアします。

これは JavaBeans のバウンドプロパティです。

パラメータ:
model - 表示項目リストを提供する ListModel
関連項目:
getModel()

setListData

public void setListData(Object[] listData)
Object の配列から ListModel を構築し、setModel を適用する簡易メソッドです。
パラメータ:
listData - リストに表示する項目を保持する Object の配列
関連項目:
setModel(javax.swing.ListModel)

setListData

public void setListData(Vector listData)
ベクトルから ListModel を構築して、setModel を適用する簡易メソッドです。
パラメータ:
listData - リストに表示する項目を保持するベクトル
関連項目:
setModel(javax.swing.ListModel)

createSelectionModel

protected ListSelectionModel createSelectionModel()
DefaultListSelectionModel のインスタンスを返します。このメソッドは、コンストラクタが selectionModel プロパティを初期化するのに使用します。
戻り値:
このJList が使用する ListSelectionModel
関連項目:
setSelectionModel(javax.swing.ListSelectionModel), DefaultListSelectionModel

getSelectionModel

public ListSelectionModel getSelectionModel()
現在の選択モデルの値を返します。選択モデルは、単一選択、隣接した範囲の選択、および非隣接選択の作成タスクを処理します。
戻り値:
リスト選択を実装する ListSelectionModel
関連項目:
setSelectionModel(javax.swing.ListSelectionModel), ListSelectionModel

fireSelectionValueChanged

protected void fireSelectionValueChanged(int firstIndex,
                                         int lastIndex,
                                         boolean isAdjusting)
このメソッドは、選択モデルが変更されたことを JList の ListSelectionListeners に通知します。このメソッドは、ListSelectionEvents を selectionModel から直接 JList に追加された ListSelectionListeners に転送するために使用されます。
関連項目:
addListSelectionListener(javax.swing.event.ListSelectionListener), removeListSelectionListener(javax.swing.event.ListSelectionListener), EventListenerList

addListSelectionListener

public void addListSelectionListener(ListSelectionListener listener)
選択物が変更されるたびに通知されるリストにリスナーを追加します。JList に直接追加されるリスナーは、(ListSelectionModel の代わりに) ListSelectionEvent.getSource() (この JList) を持ちます。
パラメータ:
listener - 追加する ListSelectionListener
関連項目:
getSelectionModel()

removeListSelectionListener

public void removeListSelectionListener(ListSelectionListener listener)
選択物が変更されるたびに通知されるリストからリスナーを削除します。
パラメータ:
listener - 削除する ListSelectionListener
関連項目:
addListSelectionListener(javax.swing.event.ListSelectionListener), getSelectionModel()

setSelectionModel

public void setSelectionModel(ListSelectionModel selectionModel)
リストの selectionModel を null ではない ListSelectionModel 実装に設定します。選択モデルは、単一選択、隣接した範囲の選択、および非隣接選択を作成するタスクを処理します。

これは JavaBeans のバウンドプロパティです。

パラメータ:
selectionModel - リスト選択を実装する ListSelectionModel
関連項目:
getSelectionModel()

setSelectionMode

public void setSelectionMode(int selectionMode)
可能な単一項目選択または複数項目選択を決定します。次の selectionMode 値を指定できます。
パラメータ:
selectionMode - 可能な選択タイプを指定する int 値
関連項目:
getSelectionMode()

getSelectionMode

public int getSelectionMode()
単一項目選択または複数項目選択のどちらが許可されているかを返します。
戻り値:
selectionMode プロパティの値
関連項目:
setSelectionMode(int)

getAnchorSelectionIndex

public int getAnchorSelectionIndex()
最後の addSelectionInterval または setSelectionInterval 呼び出しにおける最初のインデックス引数を返します。selectionModel に委譲する簡易メソッドです。
戻り値:
最後の区間選択の先頭を示すインデックス
関連項目:
ListSelectionModel.getAnchorSelectionIndex(), addSelectionInterval(int, int), setSelectionInterval(int, int), addListSelectionListener(javax.swing.event.ListSelectionListener)

getLeadSelectionIndex

public int getLeadSelectionIndex()
最後の addSelectionInterval または setSelectionInterval 呼び出しにおける 2 番目のインデックス引数を返します。selectionModel に委譲する簡易メソッドです。
戻り値:
最後の区間選択の末尾を示すインデックス
関連項目:
ListSelectionModel.getLeadSelectionIndex(), addSelectionInterval(int, int), setSelectionInterval(int, int), addListSelectionListener(javax.swing.event.ListSelectionListener)

getMinSelectionIndex

public int getMinSelectionIndex()
選択されているセルの最小インデックスを返します。selectionModel に委譲する簡易メソッドです。
戻り値:
選択されているセルの最小インデックス
関連項目:
ListSelectionModel.getMinSelectionIndex(), addListSelectionListener(javax.swing.event.ListSelectionListener)

getMaxSelectionIndex

public int getMaxSelectionIndex()
選択されているセルの最大インデックスを返します。selectionModel に委譲する簡易メソッドです。
戻り値:
選択されているセルの最大インデックス
関連項目:
ListSelectionModel.getMaxSelectionIndex(), addListSelectionListener(javax.swing.event.ListSelectionListener)

isSelectedIndex

public boolean isSelectedIndex(int index)
指定されたインデックスが選択されている場合は true を返します。selectionModel に委譲する簡易メソッドです。
戻り値:
指定されたインデックスが選択されている場合は true
関連項目:
ListSelectionModel.isSelectedIndex(int), setSelectedIndex(int), addListSelectionListener(javax.swing.event.ListSelectionListener)

isSelectionEmpty

public boolean isSelectionEmpty()
何も選択されていない場合は true を返します。selectionModel に委譲する簡易メソッドです。
戻り値:
何も選択されていない場合は true
関連項目:
ListSelectionModel.isSelectionEmpty(), clearSelection(), addListSelectionListener(javax.swing.event.ListSelectionListener)

clearSelection

public void clearSelection()
選択をクリアします。このメソッドを呼び出したあとは、isSelectionEmpty() は true を返します。 selectionModel に委譲する簡易メソッドです。
関連項目:
ListSelectionModel.clearSelection(), isSelectionEmpty(), addListSelectionListener(javax.swing.event.ListSelectionListener)

setSelectionInterval

public void setSelectionInterval(int anchor,
                                 int lead)
指定された区間を選択します。先頭および最終インデックスが含まれます。先頭インデックスが最終インデックスより小さくなくてもかまいません。selectionModel に委譲する簡易メソッドです。
パラメータ:
anchor - 最初の選択に対するインデックス
lead - 最後の選択に対するインデックス
関連項目:
ListSelectionModel.setSelectionInterval(int, int), addSelectionInterval(int, int), removeSelectionInterval(int, int), addListSelectionListener(javax.swing.event.ListSelectionListener)

addSelectionInterval

public void addSelectionInterval(int anchor,
                                 int lead)
指定された区間を現在の選択物に加えます。先頭および最終インデックスが含まれます。先頭インデックスが最終インデックスより小さくなくてもかまいません。selectionModel に委譲する簡易メソッドです。
パラメータ:
anchor - 選択物に追加する最初のインデックス
lead - 選択物に追加する最後のインデックス
関連項目:
ListSelectionModel.addSelectionInterval(int, int), setSelectionInterval(int, int), removeSelectionInterval(int, int), addListSelectionListener(javax.swing.event.ListSelectionListener)

removeSelectionInterval

public void removeSelectionInterval(int index0,
                                    int index1)
指定された区間を現在の選択物から削除します。先頭および最終インデックスが含まれます。先頭インデックスが最終インデックスより小さくなくてもかまいません。selectionModel に委譲する簡易メソッドです。
パラメータ:
index0 - 選択物から削除する最初のインデックス
index1 - 選択物から削除する最後のインデックス
関連項目:
ListSelectionModel.removeSelectionInterval(int, int), setSelectionInterval(int, int), addSelectionInterval(int, int), addListSelectionListener(javax.swing.event.ListSelectionListener)

setValueIsAdjusting

public void setValueIsAdjusting(boolean b)
データモデルの isAdjusting プロパティを true に設定し、すべての選択イベント (選択モードでリスト項目上をマウスでドラッグしている場合など) が完了した時点で単一イベントが生成されるようにします。
パラメータ:
b - プロパティ値の boolean 値
関連項目:
ListSelectionModel.setValueIsAdjusting(boolean)

getValueIsAdjusting

public boolean getValueIsAdjusting()
データモデルの isAdjusting プロパティの値を返します。複数の変更が行われている場合には true を返します。
戻り値:
複数の選択変更が発生している場合 (リスト項目上をマウスでドラッグしている場合など) は true
関連項目:
ListSelectionModel.getValueIsAdjusting()

getSelectedIndices

public int[] getSelectedIndices()
選択されているすべてのインデックスの昇順配列を返します。
戻り値:
選択されているすべてのインデックス (昇順)
関連項目:
removeSelectionInterval(int, int), addListSelectionListener(javax.swing.event.ListSelectionListener)

setSelectedIndex

public void setSelectedIndex(int index)
単一セルを選択します。
パラメータ:
index - 選択する単一セルのインデックス
関連項目:
ListSelectionModel.setSelectionInterval(int, int), isSelectedIndex(int), addListSelectionListener(javax.swing.event.ListSelectionListener)

setSelectedIndices

public void setSelectedIndices(int[] indices)
セルセットを選択します。
パラメータ:
indices - 選択するセルのインデックス
関連項目:
ListSelectionModel.addSelectionInterval(int, int), isSelectedIndex(int), addListSelectionListener(javax.swing.event.ListSelectionListener)

getSelectedValues

public Object[] getSelectedValues()
選択されたセルの値の配列を返します。値はインデックスの昇順に並べられます。
戻り値:
選択されている値
関連項目:
isSelectedIndex(int), getModel(), addListSelectionListener(javax.swing.event.ListSelectionListener)

getSelectedIndex

public int getSelectedIndex()
選択されている最初のインデックスを返す簡易メソッドです。項目が選択されていない場合は -1 を返します。
戻り値:
選択されている最初のインデックス
関連項目:
getMinSelectionIndex(), addListSelectionListener(javax.swing.event.ListSelectionListener)

getSelectedValue

public Object getSelectedValue()
選択されている最初の値を返す簡易メソッドです。項目が空である場合は null を返します。
戻り値:
選択されている最初の値
関連項目:
getMinSelectionIndex(), getModel(), addListSelectionListener(javax.swing.event.ListSelectionListener)

setSelectedValue

public void setSelectedValue(Object anObject,
                             boolean shouldScroll)
指定されたオブジェクトをリストから選択します。
パラメータ:
anObject - 選択する Object
shouldScroll - 選択されたオブジェクトを表示するためにリストをスクロールさせる場合は true

getPreferredScrollableViewportSize

public Dimension getPreferredScrollableViewportSize()
visibleRowCount の行を表示するために必要なビューポートのサイズを計算します。fixedCellWidth および fixedCellHeight プロパティが指定されている場合には、このサイズは明らかです。これらのプロパティ値は、prototypeCellValue プロパティによって暗黙に指定されることもあります。fixedCellWidth が指定されていない場合には、このサイズはもっとも幅の広いリスト要素を見つけることによって計算されます。fixedCellHeight が指定されていない場合には、次のように発見的な手段に頼ります。
定義:
インタフェース Scrollable 内の getPreferredScrollableViewportSize
関連項目:
getPreferredScrollableViewportSize(), setPrototypeCellValue(java.lang.Object)

getScrollableUnitIncrement

public int getScrollableUnitIncrement(Rectangle visibleRect,
                                      int orientation,
                                      int direction)
水平スクロール: リストのフォントサイズを返します。フォントが null であれば、1 を返します。正規化文字列 ("m"など) の幅ではなく、計算が容易なフォントサイズを使用しています。

垂直スクロール: 下方向にスクロールする場合に (direction が 0 より大きく) 、先頭行が visibleRect に対して完全に表示可能であれば、先頭行の高さを返します。下方向にスクロールする場合に、先頭行が部分的にのみ表示可能であれば、先頭行の表示部分の高さを返します。同じように、上方向にスクロールする場合に、先頭行が完全に表示可能であれば、先頭行の上の行の高さを返します。

定義:
インタフェース Scrollable 内の getScrollableUnitIncrement
戻り値:
次または前の行を表示するためにスクロールする距離
関連項目:
Scrollable.getScrollableUnitIncrement(java.awt.Rectangle, int, int)

getScrollableBlockIncrement

public int getScrollableBlockIncrement(Rectangle visibleRect,
                                       int orientation,
                                       int direction)
ブロックの増分量を返します。
定義:
インタフェース Scrollable 内の getScrollableBlockIncrement
戻り値:
各方向の visibleRect.height または visibleRect.width
関連項目:
Scrollable.getScrollableUnitIncrement(java.awt.Rectangle, int, int)

getScrollableTracksViewportWidth

public boolean getScrollableTracksViewportWidth()
この JList が JViewport に表示されている場合には、ビューポート幅の変更時にリストの幅を変更しません。この結果、JViewport 自身が JScrollPane に埋め込まれていれば、水平スクロールが可能です。
定義:
インタフェース Scrollable 内の getScrollableTracksViewportWidth
戻り値:
ビューポートの幅を追跡しない場合は false
関連項目:
Scrollable.getScrollableTracksViewportWidth()

getScrollableTracksViewportHeight

public boolean getScrollableTracksViewportHeight()
この JList が JViewport に表示されている場合には、ビューポート高の変更時にリストの高さを変更しません。この結果、JViewport 自身が JScrollPane に埋め込まれていれば、垂直スクロールが可能です。
定義:
インタフェース Scrollable 内の getScrollableTracksViewportHeight
戻り値:
ビューポートの高さを追跡しない場合は false
関連項目:
Scrollable.getScrollableTracksViewportWidth()

paramString

protected String paramString()
この JList の文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null にはなりません。

JFC コンポーネントの新しい側面についての情報を返すには、paramString() をオーバーライドします。

戻り値:
この JList の文字列表現
オーバーライド:
クラス JComponent 内の paramString

getAccessibleContext

public AccessibleContext getAccessibleContext()
この JComponent に関連付けられている AccessibleContext を取得します。
定義:
インタフェース Accessible 内の getAccessibleContext
戻り値:
この JComponent の AccessibleContext
オーバーライド:
クラス JComponent 内の getAccessibleContext

Java プラットフォーム 1.2

バグや機能要求の報告
新しい javadoc の表示についてのコメントやご提案
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.