Класс JList<E>
- Параметры типа:
E- тип элементов этого списка
- Все реализуемые интерфейсы:
ImageObserver, MenuContainer, Serializable, Accessible, Scrollable
@JavaBean(defaultProperty="UI", description="A component which allows for the selection of one or more objects from a list.") public class JList<E> extends JComponent implements Scrollable, Accessible
ListModel. Массив или вектор объектов легко отобразить с помощью конструктора JList, который автоматически создает для вас доступный только для чтения экземпляр ListModel:
// 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));
}
ListModel можно напрямую передать в JList с помощью конструктора или метода setModel. Содержимое не обязательно должно быть статичным — количество элементов и их значения могут меняться со временем. Корректная реализация ListModel уведомляет набор добавленных в нее javax.swing.event.ListDataListener каждый раз при изменении. Эти изменения описываются объектом javax.swing.event.ListDataEvent, который указывает диапазон индексов списка, которые были изменены, добавлены или удалены. JList с помощью своего ListUI отвечает за актуализацию визуального представления при изменении модели, отслеживая ее изменения.
Для простых приложений JList с динамическим содержимым можно использовать класс DefaultListModel для поддержки элементов списка. Этот класс реализует интерфейс ListModel, а также предоставляет API, похожий на java.util.Vector. Для приложений, которым требуется более специализированная реализация 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, который указывает диапазон измененного выбора.
Предпочтительный способ отслеживать изменения выбора в списке — напрямую добавлять ListSelectionListener в JList. Затем JList отслеживает модель выбора и уведомляет ваши слушатели об изменениях.
За отслеживание изменений выбора и актуализацию визуального представления списка отвечает ListUI списка.
Отрисовку ячеек в JList выполняет делегат, называемый рендерером ячеек и устанавливаемый в списке как свойство cellRenderer. Рендерер предоставляет java.awt.Component, которое используется для отрисовки ячеек как «резиновый штамп». Каждый раз, когда требуется отрисовать ячейку, ListUI списка запрашивает у рендерера ячеек компонент, размещает его в нужном месте и отрисовывает содержимое ячейки с помощью метода paint этого компонента. ListUI списка устанавливает рендерер ячеек по умолчанию, который использует для отрисовки компонент JLabel. Вы можете заменить собственным рендерером, например, с помощью такого кода:
// Display an icon and a string for each object in the list.
class MyCellRenderer extends JLabel implements ListCellRenderer<Object> {
static final ImageIcon longIcon = new ImageIcon("long.gif");
static final 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 не обеспечивает специальную обработку двойных, тройных (или N-кратных) щелчков мышью, но при необходимости легко добавить 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 в отношении потоков.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, работающими с одной и той же версией Swing. Начиная с версии 1.4 в пакет java.beans добавлена поддержка долгосрочного хранения всех JavaBeans. См. XMLEncoder.
Дополнительную документацию см. в разделе Использование списков Руководства по Java.
- Начиная с версии:
- 1.2
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class |
JList.AccessibleJList |
Этот класс реализует поддержку специальных возможностей для класса JList. |
static final class |
JList.DropLocation |
Подкласс TransferHandler.DropLocation, представляющий место сброса для JList. |
Вложенные классы/интерфейсы, объявленные в классе JComponent
JComponent.AccessibleJComponent
Вложенные классы/интерфейсы, объявленные в классе Container
Container.AccessibleAWTContainer
Вложенные классы/интерфейсы, объявленные в классе Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
HORIZONTAL_WRAP |
Обозначает макет в «газетном стиле», в котором ячейки располагаются сначала по горизонтали, затем по вертикали. |
static final int |
VERTICAL |
Обозначает вертикальное расположение ячеек в одном столбце; макет по умолчанию. |
static final int |
VERTICAL_WRAP |
Обозначает макет в «газетном стиле», в котором ячейки располагаются сначала по вертикали, затем по горизонтали. |
Поля, объявленные в классе JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Поля, объявленные в классе Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Поля, объявленные в интерфейсе ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
JList() |
Создает JList с пустой моделью, доступной только для чтения. |
JList |
Создает JList, отображающий элементы указанного массива. |
JList |
Создает JList, отображающий элементы указанного Vector. |
JList |
Создает JList, отображающий элементы из указанной модели non-null. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addListSelectionListener |
Добавляет слушателя в список, чтобы уведомлять его каждый раз при изменении выбора; предпочтительный способ отслеживания изменений состояния выбора. |
void |
addSelectionInterval |
Задает выбор как объединение указанного интервала с текущим выбором. |
void |
clearSelection() |
Снимает выделение; после вызова этого метода isSelectionEmpty вернет true. |
protected ListSelectionModel |
createSelectionModel() |
Возвращает экземпляр DefaultListSelectionModel; вызывается при создании для инициализации свойства модели выбора списка. |
void |
ensureIndexIsVisible |
Прокручивает список в содержащей его области просмотра, чтобы указанная ячейка стала полностью видимой. |
protected void |
fireSelectionValueChanged |
Уведомляет ListSelectionListener, непосредственно добавленных в список, об изменениях выбора, внесенных в модель выбора. |
AccessibleContext |
getAccessibleContext() |
Возвращает AccessibleContext, связанный с этим JList. |
int |
getAnchorSelectionIndex() |
Возвращает индекс привязки выбора. |
Rectangle |
getCellBounds |
Возвращает ограничивающий прямоугольник в системе координат списка для диапазона ячеек, заданного двумя индексами. |
ListCellRenderer |
getCellRenderer() |
Возвращает объект, отвечающий за отрисовку элементов списка. |
boolean |
getDragEnabled() |
Возвращает, включена ли автоматическая обработка перетаскивания. |
final JList.DropLocation |
getDropLocation() |
Возвращает место, которое этот компонент должен визуально обозначить как место сброса во время операции DnD над компонентом, или null, если в данный момент не нужно показывать место сброса. |
final DropMode |
getDropMode() |
Возвращает режим сброса для этого компонента. |
int |
getFirstVisibleIndex() |
Возвращает наименьший индекс списка, видимый в данный момент. |
int |
getFixedCellHeight() |
Возвращает значение свойства fixedCellHeight. |
int |
getFixedCellWidth() |
Возвращает значение свойства fixedCellWidth. |
int |
getLastVisibleIndex() |
Возвращает наибольший индекс списка, видимый в данный момент. |
int |
getLayoutOrientation() |
Возвращает свойство ориентации макета списка: VERTICAL, если макет представляет собой один столбец ячеек; VERTICAL_WRAP, если макет выполнен в «газетном стиле» и содержимое располагается сначала по вертикали, затем по горизонтали; или HORIZONTAL_WRAP, если макет выполнен в «газетном стиле» и содержимое располагается сначала по горизонтали, затем по вертикали. |
int |
getLeadSelectionIndex() |
Возвращает ведущий индекс выбора. |
ListSelectionListener[] |
getListSelectionListeners() |
Возвращает массив всех ListSelectionListener, добавленных в этот JList с помощью addListSelectionListener. |
int |
getMaxSelectionIndex() |
Возвращает наибольший индекс выбранной ячейки или -1, если выбор пуст. |
int |
getMinSelectionIndex() |
Возвращает наименьший индекс выбранной ячейки или -1, если выбор пуст. |
ListModel |
getModel() |
Возвращает модель данных, содержащую список элементов, отображаемых компонентом JList. |
int |
getNextMatch |
Возвращает следующий элемент списка, значение toString которого начинается с заданного префикса. |
Dimension |
getPreferredScrollableViewportSize() |
Вычисляет размер области просмотра, необходимый для отображения visibleRowCount строк. |
E |
getPrototypeCellValue() |
Возвращает значение ячейки-образца — значение, используемое для вычисления фиксированных ширины и высоты ячеек. |
int |
getScrollableBlockIncrement |
Возвращает расстояние прокрутки для отображения следующего или предыдущего блока. |
boolean |
getScrollableTracksViewportHeight() |
Возвращает true, если этот JList отображается в JViewport и область просмотра выше предпочтительной высоты списка, либо если ориентация макета — VERTICAL_WRAP и visibleRowCount <= 0; в противном случае возвращает false. |
boolean |
getScrollableTracksViewportWidth() |
Возвращает true, если этот JList отображается в JViewport и область просмотра шире предпочтительной ширины списка, либо если ориентация макета — HORIZONTAL_WRAP и visibleRowCount <= 0; в противном случае возвращает false. |
int |
getScrollableUnitIncrement |
Возвращает расстояние прокрутки для отображения следующей или предыдущей строки (при вертикальной прокрутке) либо колонки (при горизонтальной прокрутке). |
int |
getSelectedIndex() |
Возвращает наименьший индекс выбранной ячейки; выбор, когда в списке выбран только один элемент. |
int[] |
getSelectedIndices() |
Возвращает массив всех выбранных индексов в порядке возрастания. |
E |
getSelectedValue() |
Возвращает значение для наименьшего индекса выбранной ячейки; выбранное значение, когда в списке выбран только один элемент. |
Object[] |
getSelectedValues() |
Устарело. |
List |
getSelectedValuesList() |
Возвращает список всех выбранных элементов в порядке возрастания их индексов в списке. |
Color |
getSelectionBackground() |
Возвращает цвет, используемый для отрисовки фона выбранных элементов. |
Color |
getSelectionForeground() |
Возвращает цвет, используемый для отрисовки переднего плана выбранных элементов. |
int |
getSelectionMode() |
Возвращает текущий режим выбора для списка. |
ListSelectionModel |
getSelectionModel() |
Возвращает текущую модель выбора. |
String |
getToolTipText |
Возвращает текст подсказки для указанного события. |
ListUI |
getUI() |
Возвращает ListUI — объект оформления, отрисовывающий этот компонент. |
String |
getUIClassID() |
Возвращает "ListUI" — ключ UIDefaults, используемый для получения имени класса javax.swing.plaf.ListUI, определяющего оформление этого компонента. |
boolean |
getValueIsAdjusting() |
Возвращает значение свойства isAdjusting модели выбора. |
int |
getVisibleRowCount() |
Возвращает значение свойства visibleRowCount. |
Point |
indexToLocation |
Возвращает начало указанного элемента в системе координат списка. |
boolean |
isSelectedIndex |
Возвращает true, если указанный индекс выбран, иначе — false. |
boolean |
isSelectionEmpty() |
Возвращает true, если ничего не выбрано, иначе — false. |
int |
locationToIndex |
Возвращает индекс ячейки, ближайшей к указанному местоположению в системе координат списка. |
protected String |
paramString() |
Возвращает представление этого JList в виде String. |
void |
removeListSelectionListener |
Удаляет из списка слушателя выбора. |
void |
removeSelectionInterval |
Задает выбор как разность множеств указанного интервала и текущего выбора. |
void |
setCellRenderer |
Задает делегат, используемый для отрисовки каждой ячейки списка. |
void |
setDragEnabled |
Включает или выключает автоматическую обработку перетаскивания. |
final void |
setDropMode |
Задает режим сброса для этого компонента. |
void |
setFixedCellHeight |
Задает фиксированное значение высоты каждой ячейки списка. |
void |
setFixedCellWidth |
Задает фиксированное значение ширины каждой ячейки списка. |
void |
setLayoutOrientation |
Определяет способ размещения ячеек списка. |
void |
setListData |
Создает доступный только для чтения ListModel из массива элементов и вызывает setModel с этой моделью. |
void |
setListData |
Создает доступный только для чтения ListModel из Vector и вызывает setModel с этой моделью. |
void |
setModel |
Задает модель, представляющую содержимое, или «значение» списка, уведомляет слушателей об изменении свойства, а затем снимает выделение в списке. |
void |
setPrototypeCellValue |
Задает свойство prototypeCellValue и затем (если новое значение — non-null) вычисляет свойства fixedCellWidth и fixedCellHeight, запрашивая у рендерера ячеек компонент для заданного значения (и индекса 0) и используя предпочтительный размер этого компонента. |
void |
setSelectedIndex |
Выбирает одну ячейку. |
void |
setSelectedIndices |
Изменяет выбор, устанавливая набор индексов, указанных в заданном массиве. |
void |
setSelectedValue |
Выбирает указанный объект из списка. |
void |
setSelectionBackground |
Задает цвет, используемый для отрисовки фона выбранных элементов; рендереры ячеек могут использовать его для заливки выбранных ячеек. |
void |
setSelectionForeground |
Задает цвет, используемый для отрисовки переднего плана выбранных элементов; рендереры ячеек могут использовать его для отображения текста и графики. |
void |
setSelectionInterval |
Выбирает указанный интервал. |
void |
setSelectionMode |
Задает режим выбора для списка. |
void |
setSelectionModel |
Задает для списка свойство selectionModel с реализацией ListSelectionModel, не являющейся null. |
void |
setUI |
Задает ListUI — объект оформления, отрисовывающий этот компонент. |
void |
setValueIsAdjusting |
Задает свойство valueIsAdjusting модели выбора. |
void |
setVisibleRowCount |
Задает свойство visibleRowCount, значение которого зависит от ориентации макета: при ориентации макета VERTICAL оно задает предпочтительное количество строк, отображаемых без необходимости прокрутки; при других ориентациях влияет на перенос ячеек. |
void |
updateUI() |
Сбрасывает свойство ListUI, устанавливая значение, предоставляемое текущим оформлением. |
Методы, объявленные в классе JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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
Методы, объявленные в классе Container
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
Методы, объявленные в классе Component
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, 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, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
Подробное описание полей
VERTICAL
public static final int VERTICAL
- Начиная с:
- 1.4
- См. также:
VERTICAL_WRAP
public static final int VERTICAL_WRAP
- Начиная с:
- 1.4
- См. также:
HORIZONTAL_WRAP
public static final int HORIZONTAL_WRAP
- Начиная с:
- 1.4
- См. также:
Подробное описание конструкторов
JList
public JList(ListModel<E> dataModel)
JList, отображающий элементы из указанной модели non-null. Все конструкторы JList делегируют вызов этому конструктору. Этот конструктор регистрирует список в ToolTipManager, что позволяет визуализаторам ячеек предоставлять всплывающие подсказки.
- Параметры:
-
dataModel— модель списка - Исключения:
-
IllegalArgumentException— если модель являетсяnull
JList
public JList(E[] listData)
JList, отображающий элементы указанного массива. Этот конструктор создает модель только для чтения для данного массива, а затем делегирует вызов конструктору, принимающему ListModel. Передача в этот метод значения null приводит к неопределенному поведению и, скорее всего, к исключениям. Созданная модель напрямую ссылается на данный массив. Изменение массива после создания списка приводит к неопределенному поведению.
- Параметры:
-
listData— массив объектов, загружаемых в модель данных,non-null
JList
public JList(Vector<? extends E> listData)
JList, отображающий элементы указанного Vector. Этот конструктор создает модель только для чтения для данного Vector, а затем делегирует вызов конструктору, принимающему ListModel. Передача в этот метод значения null приводит к неопределенному поведению и, скорее всего, к исключениям. Созданная модель напрямую ссылается на данный Vector. Изменение Vector после создания списка приводит к неопределенному поведению.
- Параметры:
-
listData—Vector, загружаемый в модель данных,non-null
JList
public JList()
JList с пустой моделью, доступной только для чтения.Подробное описание методов
getUI
public ListUI getUI()
ListUI — объект оформления, который отображает этот компонент.- Переопределяет:
-
getUIв классеJComponent - Возвращает:
- объект
ListUI, который отображает этот компонент
setUI
@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the Component's LookAndFeel.") public void setUI(ListUI ui)
ListUI — объект оформления, который отображает этот компонент.- Параметры:
-
ui— объектListUI - См. также:
updateUI
public void updateUI()
ListUI, присваивая ему значение, предоставленное текущим оформлением. Если текущий визуализатор ячеек был установлен разработчиком (а не самим оформлением), это также приводит к обновлению визуализатора ячеек и его дочерних элементов путем вызова для него SwingUtilities.updateComponentTreeUI.- Переопределяет:
-
updateUIв классеJComponent - См. также:
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()
"ListUI" — ключ UIDefaults, используемый для поиска имени класса javax.swing.plaf.ListUI, определяющего оформление этого компонента.- Переопределяет:
-
getUIClassIDв классеJComponent - Возвращает:
- строку "ListUI"
- См. также:
getPrototypeCellValue
public E getPrototypeCellValue()
null.- Возвращает:
- значение свойства
prototypeCellValue - См. также:
setPrototypeCellValue
@BeanProperty(visualUpdate=true, description="The cell prototype value, used to compute cell width and height.") public void setPrototypeCellValue(E prototypeCellValue)
prototypeCellValue и затем (если новое значение — non-null) вычисляет свойства fixedCellWidth и fixedCellHeight, запрашивая у визуализатора ячеек компонент визуализатора для указанного значения (и индекса 0) и используя предпочтительный размер этого компонента. Этот метод полезен, когда список слишком длинный, чтобы ListUI вычислял ширину и высоту каждой ячейки, а известно одно значение ячейки, занимающее не меньше места, чем любое другое, — так называемый образец.
Хотя этот метод может изменить все три свойства: prototypeCellValue, fixedCellHeight и fixedCellWidth, уведомления PropertyChangeEvent отправляются только при изменении свойства prototypeCellValue.
Пример задания этого свойства см. в приведенном выше описании класса.
Значение этого свойства по умолчанию — null.
Это связанное свойство JavaBeans.
- Параметры:
-
prototypeCellValue— значение, на основе которого задаютсяfixedCellWidthиfixedCellHeight - См. также:
getFixedCellWidth
public int getFixedCellWidth()
fixedCellWidth.- Возвращает:
- фиксированную ширину ячейки
- См. также:
setFixedCellWidth
@BeanProperty(visualUpdate=true, description="Defines a fixed cell width when greater than zero.") public void setFixedCellWidth(int width)
width равно -1, ширина ячеек вычисляется в ListUI путем применения getPreferredSize к компоненту визуализатора ячеек для каждого элемента списка. Значение этого свойства по умолчанию — -1.
Это связанное свойство JavaBeans.
- Параметры:
-
width— ширина, используемая для всех ячеек списка - См. также:
getFixedCellHeight
public int getFixedCellHeight()
fixedCellHeight.- Возвращает:
- фиксированную высоту ячейки
- См. также:
setFixedCellHeight
@BeanProperty(visualUpdate=true, description="Defines a fixed cell height when greater than zero.") public void setFixedCellHeight(int height)
height равно -1, высота ячеек вычисляется в ListUI путем применения getPreferredSize к компоненту визуализатора ячеек для каждого элемента списка. Значение этого свойства по умолчанию — -1.
Это связанное свойство JavaBeans.
- Параметры:
-
height— высота, используемая для всех ячеек списка - См. также:
getCellRenderer
public ListCellRenderer<? super E> getCellRenderer()
- Возвращает:
- значение свойства
cellRenderer - См. также:
setCellRenderer
@BeanProperty(visualUpdate=true, description="The component used to draw the cells.") public void setCellRenderer(ListCellRenderer<? super E> cellRenderer)
Если свойство prototypeCellValue имеет значение non-null, установка визуализатора ячеек также приводит к повторному вычислению свойств fixedCellWidth и fixedCellHeight. Однако генерируется только одно PropertyChangeEvent — для свойства cellRenderer.
Значение этого свойства по умолчанию предоставляется делегатом ListUI, то есть реализацией оформления.
Это связанное свойство JavaBeans.
- Параметры:
-
cellRenderer—ListCellRenderer, выполняющий отрисовку ячеек списка - См. также:
getSelectionForeground
public Color getSelectionForeground()
DefaultListCellRenderer использует этот цвет для отрисовки переднего плана элементов в выбранном состоянии; так же поступают визуализаторы, устанавливаемые большинством реализаций ListUI.- Возвращает:
- цвет переднего плана выбранных элементов
- См. также:
setSelectionForeground
@BeanProperty(visualUpdate=true, description="The foreground color of selected cells.") public void setSelectionForeground(Color selectionForeground)
DefaultListCellRenderer использует этот цвет для отрисовки переднего плана элементов в выбранном состоянии; так же поступают визуализаторы, устанавливаемые большинством реализаций ListUI. Значение этого свойства по умолчанию определяется реализацией оформления.
Это связанное свойство JavaBeans.
- Параметры:
-
selectionForeground—Color, используемый для переднего плана выбранных элементов списка - См. также:
getSelectionBackground
public Color getSelectionBackground()
DefaultListCellRenderer использует этот цвет для отрисовки фона элементов в выбранном состоянии; так же поступают визуализаторы, устанавливаемые большинством реализаций ListUI.- Возвращает:
- цвет фона выбранных элементов
- См. также:
setSelectionBackground
@BeanProperty(visualUpdate=true, description="The background color of selected cells.") public void setSelectionBackground(Color selectionBackground)
DefaultListCellRenderer использует этот цвет для заливки фона элементов в выбранном состоянии; так же поступают визуализаторы, устанавливаемые большинством реализаций ListUI. Значение этого свойства по умолчанию определяется реализацией оформления.
Это связанное свойство JavaBeans.
- Параметры:
-
selectionBackground—Color, используемый для фона выбранных ячеек - См. также:
getVisibleRowCount
public int getVisibleRowCount()
visibleRowCount. Подробное описание того, как интерпретировать это значение, см. в документации к методу setVisibleRowCount(int).- Возвращает:
- значение свойства
visibleRowCount. - См. также:
setVisibleRowCount
@BeanProperty(visualUpdate=true, description="The preferred number of rows to display without requiring scrolling") public void setVisibleRowCount(int visibleRowCount)
visibleRowCount, значение которого имеет разный смысл в зависимости от ориентации расположения: для ориентации VERTICAL задает предпочтительное число строк, отображаемых без прокрутки; для остальных ориентаций влияет на перенос ячеек. При ориентации VERTICAL:
Задание этого свойства влияет на значение, возвращаемое методом getPreferredScrollableViewportSize(), который используется для вычисления предпочтительного размера содержащей области просмотра. Подробные сведения см. в документации к этому методу.
При ориентациях HORIZONTAL_WRAP и VERTICAL_WRAP:
Это свойство влияет на перенос ячеек. Подробные сведения см. в документации к методу setLayoutOrientation(int).
Значение этого свойства по умолчанию — 8.
При вызове этого метода с отрицательным значением свойству присваивается 0.
Это связанное свойство JavaBeans.
- Параметры:
-
visibleRowCount— целое число, задающее предпочтительное количество строк, отображаемых без прокрутки - См. также:
getLayoutOrientation
public int getLayoutOrientation()
VERTICAL, если ячейки расположены в одном столбце; VERTICAL_WRAP, если содержимое расположено в «газетном стиле» — сначала вертикально, затем горизонтально; или HORIZONTAL_WRAP, если содержимое расположено в «газетном стиле» — сначала горизонтально, затем вертикально.- Возвращает:
- значение свойства
layoutOrientation - Начиная с:
- 1.4
- См. также:
setLayoutOrientation
@BeanProperty(visualUpdate=true, enumerationValues={"JList.VERTICAL","JList.HORIZONTAL_WRAP","JList.VERTICAL_WRAP"}, description="Defines the way list cells are laid out.") 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 |
Ячейки располагаются вертикально в одном столбце. |
HORIZONTAL_WRAP |
Ячейки располагаются горизонтально, при необходимости переносясь на новую строку. Если свойство visibleRowCount меньше или равно нулю, перенос определяется шириной списка; в противном случае перенос выполняется так, чтобы в списке было visibleRowCount строк. |
VERTICAL_WRAP |
Ячейки располагаются вертикально, при необходимости переносясь в новый столбец. Если свойство visibleRowCount меньше или равно нулю, перенос определяется высотой списка; в противном случае перенос выполняется через visibleRowCount строк. |
VERTICAL.- Параметры:
-
layoutOrientation— новая ориентация расположения, одно из значений:VERTICAL,HORIZONTAL_WRAPилиVERTICAL_WRAP - Исключения:
-
IllegalArgumentException— еслиlayoutOrientationне является допустимым значением - Начиная с:
- 1.4
- См. также:
getFirstVisibleIndex
@BeanProperty(bound=false) public int getFirstVisibleIndex()
componentOrientation первая видимая ячейка находится ближе всего к верхнему левому углу списка. При ориентации справа налево она находится ближе всего к верхнему правому углу. Если ничего не видно или список пуст, возвращается -1. Обратите внимание, что возвращенная ячейка может быть видна лишь частично.- Возвращает:
- индекс первой видимой ячейки
- См. также:
getLastVisibleIndex
@BeanProperty(bound=false) public int getLastVisibleIndex()
-1. Обратите внимание, что возвращенная ячейка может быть видна лишь частично.- Возвращает:
- индекс последней видимой ячейки
- См. также:
ensureIndexIsVisible
public void ensureIndexIsVisible(int index)
scrollRectToVisible с границами указанной ячейки. Чтобы этот метод работал, JList должен находиться внутри JViewport. Если указанный индекс выходит за пределы диапазона ячеек списка, метод ничего не делает.
- Параметры:
-
index— индекс ячейки, которую нужно сделать видимой - См. также:
setDragEnabled
@BeanProperty(bound=false, description="determines whether automatic drag handling is enabled") public void setDragEnabled(boolean b)
true, а свойство TransferHandler списка должно иметь значение non-null. Значение свойства dragEnabled по умолчанию — false. За обработку этого свойства и распознавание жеста перетаскивания пользователя отвечает реализация оформления, в частности ListUI списка. Когда автоматическая обработка перетаскивания включена, большинство вариантов оформления (включая те, которые являются подклассами BasicLookAndFeel) начинают операцию перетаскивания при нажатии пользователем кнопки мыши над элементом и перемещении мыши на несколько пикселей. Поэтому присвоение этому свойству значения true может незаметно повлиять на поведение выбора.
Если используется оформление, игнорирующее это свойство, операцию перетаскивания все равно можно начать, вызвав exportAsDrag у TransferHandler списка.
- Параметры:
-
b— следует ли включить автоматическую обработку перетаскивания - Исключения:
-
HeadlessException— еслиbимеет значениеtrue, аGraphicsEnvironment.isHeadless()возвращаетtrue - Начиная с:
- 1.4
- См. также:
getDragEnabled
public boolean getDragEnabled()
- Возвращает:
- значение свойства
dragEnabled - Начиная с:
- 1.4
- См. также:
setDropMode
public final void setDropMode(DropMode dropMode)
DropMode.USE_SELECTION. Однако для улучшения взаимодействия с пользователем рекомендуется использовать один из других режимов. Например, DropMode.ON позволяет выделять элементы так же, как при обычном выборе, но не изменяет фактический выбор в списке. JList поддерживает следующие режимы сброса:
DropMode.USE_SELECTIONDropMode.ONDropMode.INSERTDropMode.ON_OR_INSERT
TransferHandler, принимающий сбрасываемые данные.- Параметры:
-
dropMode— используемый режим сброса - Исключения:
-
IllegalArgumentException— если режим сброса не поддерживается илиnull - Начиная с:
- 1.6
- См. также:
getDropMode
public final DropMode getDropMode()
- Возвращает:
- режим сброса для этого компонента
- Начиная с:
- 1.6
- См. также:
getDropLocation
@BeanProperty(bound=false) public final JList.DropLocation getDropLocation()
null, если в данный момент местоположение не должно отображаться. Этот метод не предназначен для получения сведений о месте сброса из TransferHandler, поскольку место сброса задаётся только после того, как TransferHandler's canImport вернул результат и разрешил отображение местоположения.
При изменении этого свойства компонент генерирует событие изменения свойства с именем "dropLocation".
По умолчанию обязанность отслеживать изменения этого свойства и визуально обозначать место сброса возлагается на ListUI списка, который может рисовать его непосредственно и/или устанавливать для этого средство отображения ячеек. Разработчикам, желающим реализовать собственную отрисовку места сброса и/или заменить средство отображения ячеек по умолчанию, может потребоваться учитывать это свойство.
- Возвращает:
- место сброса
- С версии:
- 1.6
- См. также:
getNextMatch
public int getNextMatch(String prefix, int startIndex, Position.Bias bias)
toString которого начинается с указанного префикса.- Параметры:
-
prefix- строка для проверки на совпадение -
startIndex- индекс, с которого начинается поиск -
bias- направление поиска: Position.Bias.Forward или Position.Bias.Backward. - Возвращает:
- индекс следующего элемента списка, начинающегося с префикса; в противном случае —
-1 - Вызывает исключение:
-
IllegalArgumentException- если префикс равенnullили startIndex выходит за допустимые границы - С версии:
- 1.4
getToolTipText
public String getToolTipText(MouseEvent event)
JComponent's getToolTipText: сначала он проверяет компонент средства отображения ячейки, над которой произошло событие, и возвращает его текст всплывающей подсказки, если он есть. Эта реализация позволяет задавать текст всплывающей подсказки на уровне ячейки с помощью setToolTipText в компоненте средства отображения ячеек. Примечание: Чтобы JList корректно отображал всплывающие подсказки своих средств отображения таким способом, JList должен быть зарегистрированным компонентом в ToolTipManager. Эта регистрация выполняется автоматически в конструкторе. Однако если позднее JList будет отменён, например, вызовом setToolTipText(null), подсказки средств отображения больше не будут отображаться.
- Переопределяет:
-
getToolTipTextв классеJComponent - Параметры:
-
event-MouseEvent, для которого нужно получить текст всплывающей подсказки - Возвращает:
- строку с текстом всплывающей подсказки
- См. также:
locationToIndex
public int locationToIndex(Point location)
getCellBounds. Если модель пуста, этот метод возвращает -1. Это вспомогательный метод, который делегирует вызов одноимённому методу ListUI списка. Он возвращает -1, если у списка нет ListUI.
- Параметры:
-
location- координаты точки - Возвращает:
- индекс ячейки, ближайшей к указанному местоположению, или
-1
indexToLocation
public Point indexToLocation(int index)
null. Это вспомогательный метод, который делегирует вызов одноимённому методу ListUI списка. Он возвращает null, если у списка нет ListUI.
- Параметры:
-
index- индекс ячейки - Возвращает:
- начало ячейки или
null
getCellBounds
public Rectangle getCellBounds(int index0, int index1)
Если меньший индекс находится за пределами диапазона ячеек списка, этот метод возвращает null. Если меньший индекс допустим, а больший выходит за пределы диапазона списка, возвращаются границы только первой ячейки. В противном случае возвращаются границы допустимого диапазона.
Это вспомогательный метод, который делегирует вызов одноимённому методу ListUI списка. Он возвращает null, если у списка нет ListUI.
- Параметры:
-
index0- первый индекс диапазона -
index1- второй индекс диапазона - Возвращает:
- ограничивающий прямоугольник для диапазона ячеек или
null
getModel
public ListModel<E> getModel()
JList.- Возвращает:
ListModel, предоставляющую отображаемый список элементов- См. также:
setModel
@BeanProperty(visualUpdate=true, description="The object that contains the data to be drawn by this JList.") public void setModel(ListModel<E> model)
Это связанное свойство JavaBeans.
- Параметры:
-
model-ListModel, предоставляющая список элементов для отображения - Вызывает исключение:
-
IllegalArgumentException- еслиmodelравноnull - См. также:
setListData
public void setListData(E[] listData)
ListModel из массива элементов и вызывает setModel с этой моделью. Передача значения null этому методу приводит к неопределённому поведению и, скорее всего, к исключениям. Созданная модель напрямую ссылается на указанный массив. Изменение массива после вызова этого метода приводит к неопределённому поведению.
- Параметры:
-
listData- массивE, содержащий элементы для отображения в списке - См. также:
setListData
public void setListData(Vector<? extends E> listData)
ListModel из Vector и вызывает setModel с этой моделью. Передача значения null этому методу приводит к неопределённому поведению и, скорее всего, к исключениям. Созданная модель напрямую ссылается на указанный Vector. Изменение Vector после вызова этого метода приводит к неопределённому поведению.
- Параметры:
-
listData-Vector, содержащий элементы для отображения в списке - См. также:
createSelectionModel
protected ListSelectionModel createSelectionModel()
DefaultListSelectionModel; вызывается во время создания объекта для инициализации свойства модели выделения списка.- Возвращает:
DefaultListSelectionModel, используемую для инициализации свойства модели выделения списка во время создания объекта- См. также:
getSelectionModel
public ListSelectionModel getSelectionModel()
- Возвращает:
ListSelectionModel, хранящую выделенные элементы списка- См. также:
fireSelectionValueChanged
protected void fireSelectionValueChanged(int firstIndex, int lastIndex, boolean isAdjusting)
ListSelectionListeners, непосредственно добавленных в список, об изменениях выделения, внесённых в модель выделения. JList отслеживает изменения выделения в модели выделения и пересылает уведомления слушателям, непосредственно добавленным в список, вызывая этот метод. Этот метод создаёт ListSelectionEvent с этим списком в качестве источника и указанными аргументами, а затем отправляет его зарегистрированным ListSelectionListeners.
- Параметры:
-
firstIndex- первый индекс диапазона,<= lastIndex -
lastIndex- последний индекс диапазона,>= firstIndex -
isAdjusting- указывает, является ли это одним из серии событий, во время которых изменения продолжают вноситься - См. также:
addListSelectionListener
public void addListSelectionListener(ListSelectionListener listener)
JList отслеживает изменения состояния выделения в модели выделения и уведомляет указанного слушателя о каждом изменении. У отправляемых слушателю ListSelectionEvent свойство source имеет значение этого списка.- Параметры:
-
listener-ListSelectionListener, который нужно добавить - См. также:
removeListSelectionListener
public void removeListSelectionListener(ListSelectionListener listener)
- Параметры:
-
listener-ListSelectionListener, который нужно удалить - См. также:
getListSelectionListeners
@BeanProperty(bound=false) public ListSelectionListener[] getListSelectionListeners()
ListSelectionListeners, добавленных в этот JList с помощью addListSelectionListener.- Возвращает:
- все
ListSelectionListeners этого списка или пустой массив, если слушатели не добавлялись - С версии:
- 1.4
- См. также:
setSelectionModel
@BeanProperty(description="The selection model, recording which cells are selected.") public void setSelectionModel(ListSelectionModel selectionModel)
selectionModel — реализацию null ListSelectionModel. Модель выделения отвечает за создание одиночных выделений, выделений непрерывных диапазонов и выделений несмежных элементов. Это связанное свойство JavaBeans.
- Параметры:
-
selectionModel-ListSelectionModel, реализующая выделение - Вызывает исключение:
-
IllegalArgumentException- еслиselectionModelравноnull - См. также:
setSelectionMode
@BeanProperty(bound=false, enumerationValues={"ListSelectionModel.SINGLE_SELECTION","ListSelectionModel.SINGLE_INTERVAL_SELECTION","ListSelectionModel.MULTIPLE_INTERVAL_SELECTION"}, description="The selection mode.") public void setSelectionMode(int selectionMode) Ниже перечислены допустимые режимы выделения:
-
ListSelectionModel.SINGLE_SELECTION- одновременно можно выделить только один индекс списка. В этом режимеsetSelectionIntervalиaddSelectionIntervalэквивалентны: оба заменяют текущее выделение индексом, заданным вторым аргументом («ведущим» индексом). -
ListSelectionModel.SINGLE_INTERVAL_SELECTION- одновременно можно выделить только один непрерывный интервал. В этом режимеaddSelectionIntervalдействует какsetSelectionInterval(заменяет текущее выделение), если только заданный интервал не примыкает к существующему выделению или не пересекается с ним; в последнем случае его можно использовать для расширения выделения. -
ListSelectionModel.MULTIPLE_INTERVAL_SELECTION- в этом режиме нет ограничений на то, что можно выделить. Этот режим используется по умолчанию.
- Параметры:
-
selectionMode- режим выделения - Вызывает исключение:
-
IllegalArgumentException- если режим выделения не входит в число допустимых - См. также:
getSelectionMode
public int getSelectionMode()
- Возвращает:
- текущий режим выделения
- См. также:
getAnchorSelectionIndex
@BeanProperty(bound=false) public int getAnchorSelectionIndex()
- Возвращает:
- индекс опорного элемента выделения
- См. также:
getLeadSelectionIndex
@BeanProperty(bound=false, description="The lead selection index.") public int getLeadSelectionIndex()
- Возвращает:
- индекс ведущего элемента выделения
- См. также:
getMinSelectionIndex
@BeanProperty(bound=false) public int getMinSelectionIndex()
-1, если выделение пусто. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка.- Возвращает:
- наименьший индекс выделенной ячейки или
-1 - См. также:
getMaxSelectionIndex
@BeanProperty(bound=false) public int getMaxSelectionIndex()
-1, если выделение пусто. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка.- Возвращает:
- наибольший индекс выделенной ячейки
- См. также:
isSelectedIndex
public boolean isSelectedIndex(int index)
true, если указанный индекс выделен, иначе false. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка.- Параметры:
-
index- индекс, для которого нужно проверить состояние выделения - Возвращает:
-
true, если указанный индекс выделен, иначеfalse - См. также:
isSelectionEmpty
@BeanProperty(bound=false) public boolean isSelectionEmpty()
true, если ничего не выделено, иначе false. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка.- Возвращает:
-
true, если ничего не выделено, иначеfalse - См. также:
clearSelection
public void clearSelection()
isSelectionEmpty вернёт true. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка.- См. также:
setSelectionInterval
public void setSelectionInterval(int anchor, int lead)
anchor и lead. anchor не обязательно должен быть меньше или равен lead. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка. Подробные сведения об обработке значений меньше 0 см. в документации класса используемой модели выделения.
- Параметры:
-
anchor- первый индекс для выделения -
lead- последний индекс для выделения - См. также:
addSelectionInterval
public void addSelectionInterval(int anchor, int lead)
anchor и lead. anchor не обязательно должен быть меньше или равен lead. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка. Подробные сведения об обработке значений меньше 0 см. в документации класса используемой модели выделения.
- Параметры:
-
anchor- первый индекс, добавляемый к выделению -
lead- последний индекс, добавляемый к выделению - См. также:
removeSelectionInterval
public void removeSelectionInterval(int index0, int index1)
index0 и index1. index0 не обязательно должен быть меньше или равен index1. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка. Подробные сведения об обработке значений меньше 0 см. в документации класса используемой модели выделения.
- Параметры:
-
index0- первый индекс, удаляемый из выделения -
index1- последний индекс, удаляемый из выделения - См. также:
setValueIsAdjusting
public void setValueIsAdjusting(boolean b)
valueIsAdjusting модели выделения. Когда true, последующие изменения выделения следует считать частью одного изменения. Это свойство используется внутри системы, и разработчикам обычно не требуется вызывать этот метод. Например, при обновлении модели в ответ на перетаскивание пользователем значение свойства устанавливается в true в начале перетаскивания и в false по его завершении. Это позволяет слушателям обновляться только после завершения изменения, а не обрабатывать все промежуточные значения. Это свойство можно использовать напрямую, если выполняется серия изменений, которые следует считать частью одного изменения.
Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка. Дополнительные сведения см. в документации к ListSelectionModel.setValueIsAdjusting(boolean).
- Параметры:
-
b- новое значение свойства - См. также:
getValueIsAdjusting
public boolean getValueIsAdjusting()
isAdjusting модели выделения. Это вспомогательный метод, который делегирует вызов одноимённому методу модели выделения списка.
- Возвращает:
- значение свойства
isAdjustingмодели выделения. - См. также:
getSelectedIndices
public int[] getSelectedIndices()
- Возвращает:
- все выделенные индексы в порядке возрастания или пустой массив, если ничего не выделено
- См. также:
setSelectedIndex
@BeanProperty(bound=false, description="The index of the selected cell.") public void setSelectedIndex(int index)
setSelectionInterval модели выделения. Подробные сведения об обработке значений меньше 0 см. в документации класса используемой модели выделения.- Параметры:
-
index- индекс ячейки для выделения - См. также:
setSelectedIndices
public void setSelectedIndices(int[] indices)
addSelectionInterval для добавления индексов в модель выбора. Подробные сведения об обработке значений, меньших 0, см. в документации класса используемой модели выбора.- Параметры:
-
indices— массив индексов ячеек, которые нужно выбрать,non-null - Выбрасывает:
-
NullPointerException— если переданный массив равенnull - См. также:
getSelectedValues
@Deprecated @BeanProperty(bound=false) public Object[] getSelectedValues()
getSelectedValuesList()
- Возвращает:
- выбранные значения или пустой массив, если ничего не выбрано
- См. также:
getSelectedValuesList
@BeanProperty(bound=false) public List<E> getSelectedValuesList()
- Возвращает:
- выбранные элементы или пустой список, если ничего не выбрано
- Начиная с:
- 1.7
- См. также:
getSelectedIndex
public int getSelectedIndex()
-1. Этот метод является оболочкой, делегирующей вызов getMinSelectionIndex.
- Возвращает:
- наименьший индекс выбранной ячейки
- См. также:
getSelectedValue
@BeanProperty(bound=false) public E getSelectedValue()
null. Это вспомогательный метод, который просто возвращает значение модели для getMinSelectionIndex.
- Возвращает:
- первое выбранное значение
- См. также:
setSelectedValue
public void setSelectedValue(Object anObject, boolean shouldScroll)
null, выбор очищается.- Параметры:
-
anObject— объект, который нужно выбрать -
shouldScroll—true, если список должен прокрутиться так, чтобы выбранный объект, если он существует, отобразился; в противном случаеfalse
getPreferredScrollableViewportSize
@BeanProperty(bound=false) public Dimension getPreferredScrollableViewportSize()
visibleRowCount строк. Значение, возвращаемое этим методом, зависит от ориентации компоновки: VERTICAL:
Это несложно, если заданы и fixedCellWidth, и fixedCellHeight (явно или посредством указания прототипа значения ячейки). Ширина равна fixedCellWidth плюс горизонтальные внутренние отступы списка. Высота равна fixedCellHeight, умноженному на visibleRowCount, плюс вертикальные внутренние отступы списка.
Если fixedCellWidth или fixedCellHeight не указаны, используются эвристические значения. Если модель пуста, ширина равна fixedCellWidth, если это значение больше 0, либо фиксированному значению 256. Высота равна fixedCellHeight, умноженному на visibleRowCount, если fixedCellHeight больше 0; в противном случае используется фиксированное значение 16, умноженное на visibleRowCount.
Если модель не пуста, ширина равна ширине предпочтительного размера, обычно ширине самого широкого элемента списка. Высота равна высоте ячейки с индексом 0, умноженной на visibleRowCount, плюс вертикальные внутренние отступы списка.
VERTICAL_WRAP или HORIZONTAL_WRAP:
Этот метод просто возвращает значение из getPreferredSize. Предполагается, что ListUI списка переопределяет getPreferredSize и возвращает подходящее значение.
- Определено в:
-
getPreferredScrollableViewportSizeв интерфейсеScrollable - Возвращает:
- размер области просмотра, необходимый для отображения
visibleRowCountстрок - См. также:
getScrollableUnitIncrement
public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
При горизонтальной прокрутке, если ориентация компоновки равна VERTICAL, возвращается размер шрифта списка (или 1, если шрифт равен null).
- Определено в:
-
getScrollableUnitIncrementв интерфейсеScrollable - Параметры:
-
visibleRect— видимая в области просмотра область -
orientation—SwingConstants.HORIZONTALилиSwingConstants.VERTICAL -
direction— значение меньше или равное нулю для прокрутки вверх/назад, больше нуля — для прокрутки вниз/вперёд - Возвращает:
- приращение прокрутки на одну «единицу» в указанном направлении; всегда положительное
- Выбрасывает:
-
IllegalArgumentException— еслиvisibleRectравенnullилиorientationне является ниSwingConstants.VERTICAL, ниSwingConstants.HORIZONTAL - См. также:
getScrollableBlockIncrement
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— значение меньше или равное нулю для прокрутки вверх/назад, больше нуля — для прокрутки вниз/вперёд - Возвращает:
- приращение прокрутки на один «блок» в указанном направлении; всегда положительное
- Выбрасывает:
-
IllegalArgumentException— еслиvisibleRectравенnullилиorientationне является ниSwingConstants.VERTICAL, ниSwingConstants.HORIZONTAL - См. также:
getScrollableTracksViewportWidth
@BeanProperty(bound=false) public boolean getScrollableTracksViewportWidth()
true, если этот JList отображается в JViewport, а ширина области просмотра превышает предпочтительную ширину списка, либо если ориентация компоновки равна HORIZONTAL_WRAP и visibleRowCount <= 0; в противном случае возвращает false. Если false, ширина области просмотра не отслеживается. Это позволяет выполнять горизонтальную прокрутку, если сам JViewport встроен в JScrollPane.
- Определено в:
-
getScrollableTracksViewportWidthв интерфейсеScrollable - Возвращает:
- должна ли внешняя область просмотра принудительно устанавливать ширину списка равной собственной ширине
- См. также:
getScrollableTracksViewportHeight
@BeanProperty(bound=false) public boolean getScrollableTracksViewportHeight()
true, если этот JList отображается в JViewport, а высота области просмотра превышает предпочтительную высоту списка, либо если ориентация компоновки равна VERTICAL_WRAP и visibleRowCount <= 0; в противном случае возвращает false. Если false, высота области просмотра не отслеживается. Это позволяет выполнять вертикальную прокрутку, если сам JViewport встроен в JScrollPane.
- Определено в:
-
getScrollableTracksViewportHeightв интерфейсеScrollable - Возвращает:
- должна ли внешняя область просмотра принудительно устанавливать высоту списка равной собственной высоте
- См. также:
paramString
protected String paramString()
String представление этого JList. Этот метод предназначен только для отладки; содержимое и формат возвращаемого String могут различаться в разных реализациях. Возвращаемое String может быть пустым, но не может быть null.- Переопределяет:
-
paramStringв классеJComponent - Возвращает:
Stringпредставление этогоJList.
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
AccessibleContext, связанный с этим JList. Для JList объект AccessibleContext имеет вид AccessibleJList. При необходимости создаётся новый экземпляр AccessibleJList.
- Определено в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеComponent - Возвращает:
- объект
AccessibleJList, служащийAccessibleContextэтогоJList
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/javax/swing/JList.html
getSelectedValuesList()