Интерфейс ListSelectionModel
- Все известные реализующие классы:
- DefaultListSelectionModel
public interface ListSelectionModel
Этот интерфейс представляет текущее состояние выбора для любых компонентов, которые отображают список значений со стабильными индексами. Выбор моделируется как набор интервалов, каждый интервал представляет собой непрерывный диапазон выбранных элементов списка. Методы изменения набора выбранных интервалов принимают пару индексов, index0 и index1, которые представляют замкнутый интервал, т. е. интервал включает как index0, так и index1.
- См. также:
DefaultListSelectionModel
Поля
| Модификатор и тип | Поле и описание |
|---|---|
static int |
MULTIPLE_INTERVAL_SELECTION Значение для свойства selectionMode: выбор одного или нескольких смежных диапазонов индексов за раз. |
static int |
SINGLE_INTERVAL_SELECTION Значение для свойства selectionMode: выбор одного смежного диапазона индексов за раз. |
static int |
SINGLE_SELECTION Значение для свойства selectionMode: выбор одного индекса списка за раз. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
addListSelectionListener(ListSelectionListener x) Добавить слушателя в список, который уведомляется каждый раз, когда происходит изменение выбора. |
void |
addSelectionInterval(int index0,
int index1) Изменяет выбор, чтобы он был объединением текущего выбора и индексов между |
void |
clearSelection() Изменить выбор на пустой набор. |
int |
getAnchorSelectionIndex() Возвращает первый аргумент индекса из последнего вызова setSelectionInterval(), addSelectionInterval() или removeSelectionInterval(). |
int |
getLeadSelectionIndex() Возвращает второй аргумент индекса из последнего вызова setSelectionInterval(), addSelectionInterval() или removeSelectionInterval(). |
int |
getMaxSelectionIndex() Возвращает последний выбранный индекс или -1, если выбор пуст. |
int |
getMinSelectionIndex() Возвращает первый выбранный индекс или -1, если выбор пуст. |
int |
getSelectionMode() Возвращает текущий режим выбора. |
boolean |
getValueIsAdjusting() Возвращает |
void |
insertIndexInterval(int index,
int length,
boolean before) Вставить индексы длины, начинающиеся перед/после индекса. |
boolean |
isSelectedIndex(int index) Возвращает true, если указанный индекс выбран. |
boolean |
isSelectionEmpty() Возвращает true, если индексы не выбраны. |
void |
removeIndexInterval(int index0,
int index1) Удалить индексы в интервале index0,index1 (включительно) из модели выбора. |
void |
removeListSelectionListener(ListSelectionListener x) Удалить слушателя из списка, который уведомляется каждый раз, когда происходит изменение выбора. |
void |
removeSelectionInterval(int index0,
int index1) Изменяет выбор, чтобы он был разностью множеств текущего выбора и индексов между |
void |
setAnchorSelectionIndex(int index) Установить индекс якоря выбора. |
void |
setLeadSelectionIndex(int index) Установить индекс ведущего выбора. |
void |
setSelectionInterval(int index0,
int index1) Изменяет выбор, чтобы он был между |
void |
setSelectionMode(int selectionMode) Устанавливает режим выбора. |
void |
setValueIsAdjusting(boolean valueIsAdjusting) Устанавливает свойство |
Поля
SINGLE_SELECTION
static final int SINGLE_SELECTION
Значение для свойства selectionMode: выбор одного индекса списка за раз.
- См. также:
-
setSelectionMode(int), Значения постоянных полей
SINGLE_INTERVAL_SELECTION
static final int SINGLE_INTERVAL_SELECTION
Значение для свойства selectionMode: выбор одного непрерывного диапазона индексов за раз.
- См. также:
-
setSelectionMode(int), Значения постоянных полей
MULTIPLE_INTERVAL_SELECTION
static final int MULTIPLE_INTERVAL_SELECTION
Значение для свойства selectionMode: выбор одного или нескольких непрерывных диапазонов индексов за раз.
- См. также:
-
setSelectionMode(int), Значения постоянных полей
Методы
setSelectionInterval
void setSelectionInterval(int index0,
int index1) Изменяет выбор так, чтобы он включал значения между index0 и index1 включительно. index0 не обязательно должно быть меньше или равно index1.
В режиме выбора SINGLE_SELECTION, используется только второй индекс.
Если это изменение текущего выбора, то каждый ListSelectionListener получает уведомление об изменении.
- Параметры:
-
index0- одна граница интервала. -
index1- другая граница интервала - См. также:
addListSelectionListener(javax.swing.event.ListSelectionListener)
addSelectionInterval
void addSelectionInterval(int index0,
int index1) Изменяет выбор, чтобы он стал объединением текущего выбора и индексов между index0 и index1 включительно. index0 не обязательно должно быть меньше или равно index1.
В режиме выбора SINGLE_SELECTION, это эквивалентно вызову setSelectionInterval, и используется только второй индекс. В режиме выбора SINGLE_INTERVAL_SELECTION, этот метод ведет себя как setSelectionInterval, за исключением случаев, когда заданный интервал прилегает к существующему выбору или перекрывает его, и поэтому может быть использован для расширения выбора.
Если это изменение текущего выбора, то каждый ListSelectionListener получает уведомление об изменении.
- Параметры:
-
index0- одна граница интервала. -
index1- другая граница интервала - См. также:
-
addListSelectionListener(javax.swing.event.ListSelectionListener),setSelectionInterval(int, int)
removeSelectionInterval
void removeSelectionInterval(int index0,
int index1) Изменяет выбор, чтобы он стал разностью текущего выбора и индексов между index0 и index1 включительно. index0 не обязательно должно быть меньше или равно index1.
В режиме выбора SINGLE_INTERVAL_SELECTION, если удаление приведет к двум непересекающимся выборам, удаление распространяется до большей границы выбора. Например, если выбор 0-10 и вы передаете индексы 5,6 (в любом порядке), результат выбора 0-4.
Если это изменение текущего выбора, то каждый ListSelectionListener получает уведомление об изменении.
- Параметры:
-
index0- одна граница интервала. -
index1- другая граница интервала - См. также:
addListSelectionListener(javax.swing.event.ListSelectionListener)
getMinSelectionIndex
int getMinSelectionIndex()
Возвращает первый выбранный индекс или -1, если выбор пустой.
getMaxSelectionIndex
int getMaxSelectionIndex()
Возвращает последний выбранный индекс или -1, если выбор пустой.
isSelectedIndex
boolean isSelectedIndex(int index)
Возвращает true, если указанный индекс выбран.
getAnchorSelectionIndex
int getAnchorSelectionIndex()
Возвращает первый индекс, переданный в последнем вызове setSelectionInterval(), addSelectionInterval() или removeSelectionInterval(). Последний index0 считается «якорным», а последний index1 — «ведущим». Некоторые интерфейсы отображают эти индексы особо, например, Windows95 отображает ведущий индекс с пунктирной желтой обводкой.
setAnchorSelectionIndex
void setAnchorSelectionIndex(int index)
Устанавливает якорный индекс выбора.
- См. также:
getAnchorSelectionIndex()
getLeadSelectionIndex
int getLeadSelectionIndex()
Возвращает второй индекс, переданный в последнем вызове setSelectionInterval(), addSelectionInterval() или removeSelectionInterval().
- См. также:
-
getAnchorSelectionIndex(),setSelectionInterval(int, int),addSelectionInterval(int, int)
setLeadSelectionIndex
void setLeadSelectionIndex(int index)
Устанавливает ведущий индекс выбора.
- См. также:
getLeadSelectionIndex()
clearSelection
void clearSelection()
Изменяет выбор на пустой набор. Если это изменение текущего выбора, то уведомляются все ListSelectionListener.
isSelectionEmpty
boolean isSelectionEmpty()
Возвращает true, если индексы не выбраны.
insertIndexInterval
void insertIndexInterval(int index,
int length,
boolean before) Вставка length индексов перед/после индекса. Обычно вызывается для синхронизации модели выбора с соответствующим изменением модели данных.
removeIndexInterval
void removeIndexInterval(int index0,
int index1) Удаляет индексы в интервале index0,index1 (включительно) из модели выбора. Обычно вызывается для синхронизации модели выбора с соответствующим изменением модели данных.
setValueIsAdjusting
void setValueIsAdjusting(boolean valueIsAdjusting)
Устанавливает свойство valueIsAdjusting, которое указывает, следует ли рассматривать предстоящие изменения выбора как часть одного изменения. Значение этого свойства используется для инициализации свойства valueIsAdjusting генерируемых ListSelectionEvent.
Например, если выбор обновляется в ответ на перетаскивание пользователем, это свойство можно установить в true при начале перетаскивания и установить в false по окончании перетаскивания. Во время перетаскивания слушатели получают события со свойством valueIsAdjusting, установленным в true. В конце перетаскивания, когда изменение завершено, слушатели получают событие со значением, установленным в false. Слушатели могут использовать этот шаблон, если хотят обновлять только при завершении изменения.
Установка этого свойства в true запускает серию изменений, которые будут рассматриваться как единое изменение. При изменении свойства обратно на false, отправляется событие, характеризующее все изменения выбора (если таковые были), со свойством события valueIsAdjusting установленным в false.
- Параметры:
-
valueIsAdjusting- новое значение свойства - См. также:
-
getValueIsAdjusting(),ListSelectionEvent.getValueIsAdjusting()
getValueIsAdjusting
boolean getValueIsAdjusting()
Возвращает true , если выбор изменяется сериями.
- Возвращает:
- true, если выбор изменяется сериями
- См. также:
setValueIsAdjusting(boolean)
setSelectionMode
void setSelectionMode(int selectionMode)
Устанавливает режим выбора. Следующий список описывает допустимые режимы выбора:
-
ListSelectionModel.SINGLE_SELECTION- Одновременно может быть выбран только один индекс списка. В этом режимеsetSelectionIntervalиaddSelectionIntervalэквивалентны, оба заменяют текущий выбор индексом, представленным вторым аргументом (ведущим). -
ListSelectionModel.SINGLE_INTERVAL_SELECTION- Одновременно может быть выбран только один непрерывный интервал. В этом режимеaddSelectionIntervalведет себя какsetSelectionInterval(заменяя текущий выбор), за исключением случаев, когда заданный интервал прилегает к существующему выбору или перекрывает его, и поэтому может быть использован для его расширения. -
ListSelectionModel.MULTIPLE_INTERVAL_SELECTION- В этом режиме нет ограничений на выбор.
- Исключения:
-
IllegalArgumentException- если режим выбора не является допустимым - См. также:
getSelectionMode()
getSelectionMode
int getSelectionMode()
Возвращает текущий режим выбора.
- Возвращает:
- текущий режим выбора
- См. также:
setSelectionMode(int)
addListSelectionListener
void addListSelectionListener(ListSelectionListener x)
Добавляет слушателя к списку, который уведомляется при каждом изменении выбора.
- Параметры:
-
x- слушатель ListSelectionListener - См. также:
-
removeListSelectionListener(javax.swing.event.ListSelectionListener),setSelectionInterval(int, int),addSelectionInterval(int, int),removeSelectionInterval(int, int),clearSelection(),insertIndexInterval(int, int, boolean),removeIndexInterval(int, int)
removeListSelectionListener
void removeListSelectionListener(ListSelectionListener x)
Удаляет слушателя из списка, который уведомляется каждый раз при изменении выделения.
- Параметры:
-
x- слушатель ListSelectionListener - См. также:
addListSelectionListener(javax.swing.event.ListSelectionListener)
© 1993, 2020, 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.