|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JList
public class JList
オブジェクトのリストを表示し、ユーザーが 1 つまたは複数のオブジェクトを選択できるようにするコンポーネントです。別のモデルである ListModel が、リストの内容を保持します。
読み取り専用の ListModel のインスタンスを自動生成する JList コンストラクタを使用すれば、オブジェクトの配列または Vector を簡単に表示できます。
// Create a JList that displays strings from an array
String[] data = {"one", "two", "three", "four"};
JList myList = new JList(data);
// Create a JList that displays the superclasses of JList.class, by
// creating it with a Vector populated with this data
Vector superClasses = new Vector();
Class rootClass = javax.swing.JList.class;
for(Class cls = rootClass; cls != null; cls = cls.getSuperclass()) {
superClasses.addElement(cls);
}
JList myList = new JList(superClasses);
// The automatically created model is stored in JList's "model"
// property, which you can retrieve
ListModel 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 bigData = new AbstractListModel() {
public int getSize() { return Short.MAX_VALUE; }
public Object getElementAt(int index) { return "Index " + index; }
};
JList の選択状態は、ListSelectionModel のインスタンスである別のモデルによって管理されます。JList は、構築時に選択モデルによって初期化されます。JList には、この選択モデルの照会や設定を行う各メソッドが含まれています。Jlist は、選択を簡単に管理できる便利なメソッドも提供します。たとえば setSelectedIndex、getSelectedValue などのカバーメソッドでは、選択モデルとのやりとりの詳細を管理できます。デフォルトでは、JList の選択モデルは、任意の項目の組み合わせを一度に選択できるように設定されます (MULTIPLE_INTERVAL_SELECTION 選択モード)。選択モードは、選択モデル上で直接変更するか、JList のカバーメソッドを使って変更します。ユーザーのジェスチャーに応じて選択モデルを更新する処理は、リストの ListUI によって行われます。
ListSelectionModel が正しく実装されていれば、選択が変更されるたびに追加された javax.swing.event.ListSelectionListener のセットに通知が送られます。これらの変更は、選択範囲の変更を識別する javax.swing.event.ListSelectionEvent によって記述されます。
リスト選択の変更を待機する方法としては、JList に直接 ListSelectionListener を追加することをお勧めします。すると、JList が選択モデルの変更を待機し、変更があった場合にリスナーに通知を送るようになります。
リストの視覚表現を常に最新の状態にしておくため、選択の変更を待機する処理は、リストの ListUI によって行われます。
セルレンダリングの別のジョブは、リストのサイズ情報の特定にも役立ちます。デフォルトでは、リストの
警告: Swing はスレッドに対して安全ではありません。詳細は、「Swing's Threading Policy」を参照してください。
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。JDK Version 1.4 以降、すべての JavaBeans™ の長期間の運用サポートは、
詳細は、「The Java Tutorial」の「How to Use Lists」を参照してください。また、「The Swing Connection」 の「Advanced JList Programming」も参照してください。
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 {
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 bigDataList = new JList(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);
java.beans パッケージに追加されています。詳細は、XMLEncoder を参照してください。
ListModel,
AbstractListModel,
DefaultListModel,
ListSelectionModel,
DefaultListSelectionModel,
ListCellRenderer,
DefaultListCellRenderer
| 入れ子のクラスの概要 | |
|---|---|
protected class |
JList.AccessibleJList
このクラスは JList クラス用のアクセシビリティーサポートを実装しています。 |
static class |
JList.DropLocation
JList のドロップ位置を表す TransferHandler.DropLocation のサブクラスです。 |
| クラス javax.swing.JComponent から継承された入れ子のクラス/インタフェース |
|---|
JComponent.AccessibleJComponent |
| クラス java.awt.Container から継承された入れ子のクラス/インタフェース |
|---|
Container.AccessibleAWTContainer |
| クラス java.awt.Component から継承された入れ子のクラス/インタフェース |
|---|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy |
| フィールドの概要 | |
|---|---|
static int |
HORIZONTAL_WRAP
セルが水平方向の次に垂直方向の順で並ぶ「ニュースペーパースタイル」レイアウトを示します。 |
static int |
VERTICAL
セルを垂直方向に 1 列に並べたレイアウト (デフォルト) を示します。 |
static int |
VERTICAL_WRAP
セルが垂直方向の次に水平方向の順で並ぶ「ニュースペーパースタイル」レイアウトを示します。 |
| クラス 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 |
| インタフェース java.awt.image.ImageObserver から継承されたフィールド |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| コンストラクタの概要 | |
|---|---|
JList()
空の読み取り専用モデルで JList を構築します。 |
|
JList(ListModel dataModel)
指定された null 以外の モデルの要素を表示する JList を構築します。 |
|
JList(Object[] listData)
指定された配列の要素を表示する JList を構築します。 |
|
JList(Vector<?> listData)
指定された Vector の要素を表示する JList を構築します。 |
|
| メソッドの概要 | |
|---|---|
void |
addListSelectionListener(ListSelectionListener listener)
選択が変更されるたびに通知されるリストにリスナーを追加します。 |
void |
addSelectionInterval(int anchor,
int lead)
指定された区間を現在の選択に加えます。 |
void |
clearSelection()
選択をクリアします。 |
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 |
getCellRenderer()
リスト項目をペイントするオブジェクトを返します。 |
boolean |
getDragEnabled()
自動ドラッグ処理が有効であるかどうかを返します。 |
JList.DropLocation |
getDropLocation()
このコンポーネントがコンポーネントのドラッグ&ドロップ時にドロップ位置として視覚的に示す位置を返します。 |
DropMode |
getDropMode()
このコンポーネントのドロップモードを返します。 |
int |
getFirstVisibleIndex()
現在表示されている最小のリストインデックスを返します。 |
int |
getFixedCellHeight()
fixedCellHeight プロパティーの値を返します。 |
int |
getFixedCellWidth()
fixedCellWidth プロパティーの値を返します。 |
int |
getLastVisibleIndex()
現在表示されている最大のリストインデックスを返します。 |
int |
getLayoutOrientation()
リストのレイアウト方向のプロパティーを返します。 |
int |
getLeadSelectionIndex()
選択範囲のリードインデックスを返します。 |
ListSelectionListener[] |
getListSelectionListeners()
addListSelectionListener により、この JList に追加されたすべての ListSelectionListener の配列を返します。 |
int |
getMaxSelectionIndex()
選択されているセルの最大インデックスを返すか、選択範囲が空の場合は -1 を返します。 |
int |
getMinSelectionIndex()
選択されているセルの最小インデックスを返すか、選択範囲が空の場合は -1 を返します。 |
ListModel |
getModel()
JList コンポーネントによって表示される項目のリストを保持するデータモデルを返します。 |
int |
getNextMatch(String prefix,
int startIndex,
Position.Bias bias)
指定された接頭辞で始まる、 toString 値を持つ次のリスト要素を返します。 |
Dimension |
getPreferredScrollableViewportSize()
visibleRowCount の行を表示するために必要なビューポートのサイズを計算します。 |
Object |
getPrototypeCellValue()
セルの固定幅と固定の高さを計算するために使用する値、「プロトタイプ」セル値を返します。 |
int |
getScrollableBlockIncrement(Rectangle visibleRect,
int orientation,
int direction)
次または前のブロックを表示するためにスクロールする距離を返します。 |
boolean |
getScrollableTracksViewportHeight()
この JList が JViewport 内に表示され、ビューポートの幅がリストの適切な高さよりも高い場合、またはレイアウト方向が VERTICAL_WRAP で visibleRowCount <= 0 である場合、true を返します。 |
boolean |
getScrollableTracksViewportWidth()
この JList が JViewport 内に表示され、ビューポートの幅がリストの適切な幅よりも広い場合、またはレイアウト方向が HORIZONTAL_WRAP で visibleRowCount <= 0 である場合、true を返します。 |
int |
getScrollableUnitIncrement(Rectangle visibleRect,
int orientation,
int direction)
次または前の行 (垂直スクロール) または列 (水平スクロール) を表示するためにスクロールする距離を返します。 |
int |
getSelectedIndex()
選択されているセルの最小インデックス (リスト内の項目が 1 つだけ選択されている場合は「選択」) を返します。 |
int[] |
getSelectedIndices()
選択されているすべてのインデックスの昇順配列を返します。 |
Object |
getSelectedValue()
選択されているセルの最小インデックスの値 (リスト内の項目が 1 つだけ選択されている場合は「選択値」) を返します。 |
Object[] |
getSelectedValues()
選択されているすべての値を、リスト内のインデックスに基づいて昇順の配列にして返します。 |
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 cellRenderer)
リスト内の各セルをペイントするために使用される委譲を設定します。 |
void |
setDragEnabled(boolean b)
自動ドラッグ処理をオンまたはオフにします。 |
void |
setDropMode(DropMode dropMode)
このコンポーネントのドロップモードを設定します。 |
void |
setFixedCellHeight(int height)
リストに含まれるすべてのセルの高さとして使用する固定値を設定します。 |
void |
setFixedCellWidth(int width)
リストに含まれるすべてのセルの幅として使用する固定値を設定します。 |
void |
setLayoutOrientation(int layoutOrientation)
リストのセルの配置方法を定義する 5 つのセルから成る JList があるとします。 |
void |
setListData(Object[] listData)
オブジェクトの配列から読み取り専用 ListModel を構築し、このモデルを使って setModel を呼び出します。 |
void |
setListData(Vector<?> listData)
Vector から読み取り専用 ListModel を構築し、このモデルを使って setModel を呼び出します。 |
void |
setModel(ListModel model)
リストの内容または「値」を表すモデルを設定し、リスナーにプロパティーの変更を通知して、リストの選択をクリアします。 |
void |
setPrototypeCellValue(Object prototypeCellValue)
prototypeCellValue プロパティーを設定し、新しい値が 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 プロパティー (レイアウト方向によって意味が異なる) を設定します。 |
void |
updateUI()
ListUI プロパティーに現在の Look & Feel が提供する値を設定することにより、このプロパティーをリセットします。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| フィールドの詳細 |
|---|
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 dataModel)
null 以外の モデルの要素を表示する JList を構築します。すべての JList コンストラクタは、このオブジェクトに委譲します。
このコンストラクタは、ToolTipManager にリストを登録することにより、セルレンダリングのツールヒントが提供されるようにします。
dataModel - リストのモデル
IllegalArgumentException - モデルが null の場合public JList(Object[] listData)
JList を構築します。このコンストラクタは、指定された配列の読み取り専用モデルを作成し、ListModel をとるコンストラクタに委譲します。
このメソッドに null 値を渡そうとすると、不確定な動作が生じ、さらに多くの場合は例外が発生します。作成されたモデルは、指定された配列を直接参照します。リストの作成後に配列を変更しようとすると、不確定な動作が生じます。
listData - データモデルにロードされる Object の配列。null 以外public JList(Vector<?> listData)
Vector の要素を表示する JList を構築します。このコンストラクタは、指定された Vector の読み取り専用モデルを作成し、ListModel をとるコンストラクタに委譲します。
このメソッドに null 値を渡そうとすると、不確定な動作が生じ、さらに多くの場合は例外が発生します。作成されたモデルは、指定された Vector を直接参照します。リストの作成後に Vector を変更しようとすると、不確定な動作が生じます。
listData - データモデルにロードされる Vector。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 が呼び出されて、セルレンダリングとその子が更新されます。
JComponent 内の updateUIUIManager.getUI(javax.swing.JComponent),
SwingUtilities.updateComponentTreeUI(java.awt.Component)public String getUIClassID()
javax.swing.plaf.ListUI クラスの名前を検索するために使用する UIDefaults キー、「ListUI」を返します。
JComponent 内の getUIClassIDJComponent.getUIClassID(),
UIDefaults.getUI(javax.swing.JComponent)public Object getPrototypeCellValue()
null が返される可能性があります。
prototypeCellValue プロパティーの値setPrototypeCellValue(java.lang.Object)public void setPrototypeCellValue(Object prototypeCellValue)
prototypeCellValue プロパティーを設定し、新しい値が 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(java.lang.Object),
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(java.lang.Object),
setFixedCellWidth(int),
Container.addPropertyChangeListener(java.beans.PropertyChangeListener)public ListCellRenderer getCellRenderer()
cellRenderer プロパティーの値setCellRenderer(javax.swing.ListCellRenderer)public void setCellRenderer(ListCellRenderer cellRenderer)
prototypeCellValue プロパティーが 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 が左から右である場合、最初の可視セルはリストの左上隅にもっとも近い位置に見つかります。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 の値を 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 が行います。この 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 の登録が解除された場合、レンダリングからのヒントは表示されなくなります。
JComponent 内の getToolTipTextevent - ツールヒントテキストを取得する 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 - セルのインデックス
null
public Rectangle getCellBounds(int index0,
int index1)
小さいほうのインデックスがリストのセルの範囲外にある場合、このメソッドは null を返します。小さいほうのインデックスが有効であっても、大きいほうのインデックスがリストの範囲外にある場合、最初のインデックスの境界だけが返されます。そうでない場合、有効な範囲の境界が返されます。
これは、リストの ListUI 内の同じ名前のメソッドに委譲するカバーメソッドです。リストに ListUI がない場合、null を返します。
index0 - 範囲の先頭のインデックスindex1 - 範囲の 2 番目のインデックス
nullpublic ListModel getModel()
JList コンポーネントによって表示される項目のリストを保持するデータモデルを返します。
ListModelsetModel(javax.swing.ListModel)public void setModel(ListModel model)
これは JavaBeans バウンドプロパティーです。
model - 表示される項目のリストを提供する
ListModel
IllegalArgumentException - model が
null の場合getModel(),
clearSelection()public void setListData(Object[] listData)
ListModel を構築し、このモデルを使って setModel を呼び出します。
このメソッドに null 値を渡そうとすると、不確定な動作が生じ、さらに多くの場合は例外が発生します。作成されたモデルは、指定された配列を直接参照します。このメソッドの呼び出し後に配列を変更しようとすると、不確定な動作が生じます。
listData - リストに表示する項目を保持する Object の配列setModel(javax.swing.ListModel)public void setListData(Vector<?> listData)
Vector から読み取り専用 ListModel を構築し、このモデルを使って setModel を呼び出します。
このメソッドに null 値を渡そうとすると、不確定な動作が生じ、さらに多くの場合は例外が発生します。作成されたモデルは、指定された Vector を直接参照します。このメソッドの呼び出し後に Vector を変更しようとすると、不確定な動作が生じます。
listData - リストに表示する項目を保持する VectorsetModel(javax.swing.ListModel)protected ListSelectionModel createSelectionModel()
DefaultListSelectionModel のインスタンスを返します。
DefaultListSelectionModelsetSelectionModel(javax.swing.ListSelectionModel),
DefaultListSelectionModelpublic ListSelectionModel getSelectionModel()
ListSelectionModelsetSelectionModel(javax.swing.ListSelectionModel),
ListSelectionModel
protected void fireSelectionValueChanged(int firstIndex,
int lastIndex,
boolean isAdjusting)
ListSelectionListener に、選択モデルに変更が加えられたことを通知します。JList は、選択モデル内の選択に対する変更を待機し、このメソッドを呼び出すことにより、リストに直接追加されたリスナーに通知を送ります。
このメソッドは、このリストをソースとし、指定の引数を使って、ListSelectionEvent を構築します。さらに、この ListSelectionEvent を登録済みの ListSelectionListener に送信します。
firstIndex - 範囲内の最初のインデックス、<= lastIndexlastIndex - 範囲内の最後のインデックス、>= firstIndexisAdjusting - このイベントが変更中の一連のイベントに含まれているかどうかaddListSelectionListener(javax.swing.event.ListSelectionListener),
removeListSelectionListener(javax.swing.event.ListSelectionListener),
ListSelectionEvent,
EventListenerListpublic void addListSelectionListener(ListSelectionListener listener)
JList は、選択モデルの選択状態の変更を待機し、指定されたリスナーに個々の変更を通知します。リスナーに送信された ListSelectionEvent により、ソース プロパティーとしてこのリストが設定されます。
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 - 選択を実装する 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 を返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバーメソッドです。
-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 を返します。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバーメソッドです。
ListSelectionModel.clearSelection(),
isSelectionEmpty()
public void setSelectionInterval(int anchor,
int 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)
アンカー インデックスと リード インデックスが含まれます。アンカー の値は、リード 以下でなくてもかまいません。これは、リストの選択モデル上の同じ名前のメソッドに委譲するカバーメソッドです。
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)public Object[] getSelectedValues()
isSelectedIndex(int),
getModel(),
addListSelectionListener(javax.swing.event.ListSelectionListener)public int getSelectedIndex()
-1 を返します。
このメソッドは、getMinSelectionIndex に委譲するカバーメソッドです。
getMinSelectionIndex(),
addListSelectionListener(javax.swing.event.ListSelectionListener)public Object 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 をオーバーライドして、適切な値を返す必要があります。
Scrollable 内の getPreferredScrollableViewportSizevisibleRowCount 行の表示に必要なビューポートのサイズを含む寸法getPreferredScrollableViewportSize(),
setPrototypeCellValue(java.lang.Object)
public int getScrollableUnitIncrement(Rectangle visibleRect,
int orientation,
int direction)
水平方向のスクロールでは、レイアウトの方向が VERTICAL である場合、リストのフォントサイズ (フォントが null の場合は 1) が返されます。
Scrollable 内の getScrollableUnitIncrementvisibleRect - ビューポート内の可視のビュー領域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() と同じでなければなりません。
Scrollable 内の getScrollableBlockIncrementvisibleRect - ビューポート内の可視のビュー領域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 に組み込まれている場合、水平スクロールができるようになります。
Scrollable 内の getScrollableTracksViewportWidthScrollable.getScrollableTracksViewportWidth()public boolean getScrollableTracksViewportHeight()
JList が JViewport 内に表示され、ビューポートの幅がリストの適切な高さよりも高い場合、またはレイアウト方向が VERTICAL_WRAP で visibleRowCount <= 0 である場合、true を返します。そうでない場合は false を返します。
false の場合、ビューポートの高さを追跡しません。これにより、JViewport 自体が JScrollPane に組み込まれている場合、垂直スクロールができるようになります。
Scrollable 内の getScrollableTracksViewportHeightScrollable.getScrollableTracksViewportHeight()protected String paramString()
JList の String 表現を返します。このメソッドはデバッグ専用であり、返される String の内容および形式は実装によって異なります。返される String は空の場合がありますが、{null にはなりません。
JComponent 内の paramStringJList の String 表現public AccessibleContext getAccessibleContext()
JList に関連した AccessibleContext を取得します。JList の場合、AccessibleContext は AccessibleJList の形式を取ります。
必要に応じて新規の AccessibleJList インスタンスが作成されます。
Accessible 内の getAccessibleContextJComponent 内の getAccessibleContextJList の AccessibleContext として機能する AccessibleJList
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。