Spec-Zone.ru › OpenJDK 8

Интерфейс TreeSelectionModel

Все известные реализующие классы:
DefaultTreeSelectionModel, JTree.EmptySelectionModel

public interface TreeSelectionModel

Этот интерфейс представляет текущее состояние выбора для компонента дерева. Информацию и примеры использования моделей выбора дерева см. на странице Как использовать деревья в Java Tutorial.

Состояние выбора дерева характеризуется набором TreePaths и, необязательно, набором целых чисел. Сопоставление между TreePath и целым числом выполняется с помощью экземпляра RowMapper. Модели выбора дерева не обязательно должны иметь RowMapper для корректной работы, но без RowMapper getSelectionRows вернёт null.

Модель выбора дерева может быть настроена на разрешение только одного пути (SINGLE_TREE_SELECTION) , нескольких смежных путей (CONTIGUOUS_TREE_SELECTION) или нескольких несвязанных путей (DISCONTIGUOUS_TREE_SELECTION). Экземпляр RowMapper используется для определения, являются ли TreePaths смежными. В отсутствие RowMapper CONTIGUOUS_TREE_SELECTION и DISCONTIGUOUS_TREE_SELECTION ведут себя одинаково, то есть они разрешают любое количество путей в модели выбора TreeSelectionModel.

Для модели выбора CONTIGUOUS_TREE_SELECTION каждый раз, когда пути изменяются (setSelectionPath, addSelectionPath …), TreePaths проверяются на смежность. Проверку TreePaths также можно выполнить принудительно, вызвав resetRowSelection. Способ отображения набора несвязанных TreePaths в смежный набор предоставлен разработчикам этого интерфейса для реализации определённой политики.

Реализации должны объединять дублирующиеся TreePaths, которые добавляются к выбору. Например, следующий код

TreePath[] paths = new TreePath[] { treePath, treePath };
   treeSelectionModel.setSelectionPaths(paths);
должен привести к выбору только одного пути: treePath, а не двух копий treePath.

Ведущий TreePath – это последний добавленный (или установленный) путь. Ведущая строка – это затем строка, соответствующая TreePath, как определено RowMapper.

Поля

Модификатор и тип Поле и описание
static int CONTIGUOUS_TREE_SELECTION

Выбор может быть только смежным.

static int DISCONTIGUOUS_TREE_SELECTION

Выбор может содержать любое количество элементов, которые не обязательно должны быть смежными.

static int SINGLE_TREE_SELECTION

Выбор может содержать только один путь за раз.

Методы

Модификатор и тип Метод и описание
void addPropertyChangeListener(PropertyChangeListener listener)

Добавляет PropertyChangeListener в список слушателей.

void addSelectionPath(TreePath path)

Добавляет путь к текущему выбору.

void addSelectionPaths(TreePath[] paths)

Добавляет пути к текущему выбору.

void addTreeSelectionListener(TreeSelectionListener x)

Добавляет x в список слушателей, уведомляемых при каждом изменении набора выбранных TreePaths.

void clearSelection()

Очищает текущий выбор.

TreePath getLeadSelectionPath()

Возвращает последний добавленный путь.

int getLeadSelectionRow()

Возвращает индекс ведущего выбора.

int getMaxSelectionRow()

Возвращает наибольшее значение, полученное от RowMapper для текущего набора выбранных TreePaths.

int getMinSelectionRow()

Возвращает наименьшее значение, полученное от RowMapper для текущего набора выбранных TreePaths.

RowMapper getRowMapper()

Возвращает экземпляр RowMapper, способный сопоставить TreePath со строкой.

int getSelectionCount()

Возвращает количество выбранных путей.

int getSelectionMode()

Возвращает текущий режим выбора, один из SINGLE_TREE_SELECTION, CONTIGUOUS_TREE_SELECTION или DISCONTIGUOUS_TREE_SELECTION.

TreePath getSelectionPath()

Возвращает первый путь в выборе.

TreePath[] getSelectionPaths()

Возвращает пути в выборе.

int[] getSelectionRows()

Возвращает все текущие выбранные строки.

boolean isPathSelected(TreePath path)

Возвращает true, если путь, path, находится в текущем выборе.

boolean isRowSelected(int row)

Возвращает true, если строка, идентифицированная по row, выбрана.

boolean isSelectionEmpty()

Возвращает true, если выбор в настоящее время пуст.

void removePropertyChangeListener(PropertyChangeListener listener)

Удаляет PropertyChangeListener из списка слушателей.

void removeSelectionPath(TreePath path)

Удаляет путь из выбора.

void removeSelectionPaths(TreePath[] paths)

Удаляет пути из выбора.

void removeTreeSelectionListener(TreeSelectionListener x)

Удаляет x из списка слушателей, уведомляемых при каждом изменении набора выбранных TreePaths.

void resetRowSelection()

Обновляет сопоставление этого объекта между TreePaths и строками.

void setRowMapper(RowMapper newMapper)

Устанавливает экземпляр RowMapper.

void setSelectionMode(int mode)

Устанавливает модель выбора, которая должна быть одной из SINGLE_TREE_SELECTION, CONTIGUOUS_TREE_SELECTION или DISCONTIGUOUS_TREE_SELECTION.

void setSelectionPath(TreePath path)

Устанавливает выбор на путь.

void setSelectionPaths(TreePath[] paths)

Устанавливает выбор на путь.

Поля

SINGLE_TREE_SELECTION

static final int SINGLE_TREE_SELECTION

Выбор может содержать только один путь одновременно.

См. также:
Значения константных полей

CONTIGUOUS_TREE_SELECTION

static final int CONTIGUOUS_TREE_SELECTION

Выбор может быть только смежным. Это будет выполняться только в том случае, если предоставлен экземпляр RowMapper. То есть, если RowMapper не задан, это ведет себя так же, как DISCONTIGUOUS_TREE_SELECTION.

См. также:
Значения константных полей

DISCONTIGUOUS_TREE_SELECTION

static final int DISCONTIGUOUS_TREE_SELECTION

Выбор может содержать любое количество элементов, которые не обязательно должны быть смежными.

См. также:
Значения константных полей

Методы

setSelectionMode

void setSelectionMode(int mode)

Устанавливает модель выбора, которая должна быть одной из SINGLE_TREE_SELECTION, CONTIGUOUS_TREE_SELECTION или DISCONTIGUOUS_TREE_SELECTION.

Это может изменить выбор, если текущий выбор не является допустимым для новой модели. Например, если выбраны три TreePath, когда режим изменяется на SINGLE_TREE_SELECTION, будет выбран только один TreePath. Конкретная реализация должна определить, какой TreePath останется выбранным.

getSelectionMode

int getSelectionMode()

Возвращает текущий режим выбора, один из SINGLE_TREE_SELECTION, CONTIGUOUS_TREE_SELECTION или DISCONTIGUOUS_TREE_SELECTION.

setSelectionPath

void setSelectionPath(TreePath path)

Устанавливает выбор на путь. Если это изменение, то TreeSelectionListeners уведомляются. Если path равно null, это имеет тот же эффект, что и вызов clearSelection.

Параметры:
path - новый путь для выбора

setSelectionPaths

void setSelectionPaths(TreePath[] paths)

Устанавливает выбор на путь. Если это изменение, то TreeSelectionListeners уведомляются. Если paths равно null, это имеет тот же эффект, что и вызов clearSelection.

Параметры:
paths - новый выбор

addSelectionPath

void addSelectionPath(TreePath path)

Добавляет путь к текущему выбору. Если путь отсутствует в текущем выборе, TreeSelectionListeners уведомляются. Это не имеет эффекта, если path равно null.

Параметры:
path - новый путь для добавления к текущему выбору

addSelectionPaths

void addSelectionPaths(TreePath[] paths)

Добавляет пути к текущему выбору. Если любой из путей в paths отсутствует в текущем выборе, TreeSelectionListeners уведомляются. Это не имеет эффекта, если paths равно null.

Параметры:
paths - новые пути для добавления к текущему выбору

removeSelectionPath

void removeSelectionPath(TreePath path)

Удаляет путь из выбора. Если путь присутствует в выборе, TreeSelectionListeners уведомляются. Это не имеет эффекта, если path равно null.

Параметры:
path - путь для удаления из выбора

removeSelectionPaths

void removeSelectionPaths(TreePath[] paths)

Удаляет пути из выбора. Если любой из путей в paths присутствует в выборе, TreeSelectionListeners уведомляются. Этот метод не имеет эффекта, если paths равно null.

Параметры:
paths - путь для удаления из выбора

getSelectionPath

TreePath getSelectionPath()

Возвращает первый путь в выборе. Как определяется "первый", зависит от реализатора и может не обязательно быть TreePath с наименьшим целочисленным значением, определённым из RowMapper.

getSelectionPaths

TreePath[] getSelectionPaths()

Возвращает пути в выборе. Возвращает null (или пустой массив), если ничего не выбрано.

getSelectionCount

int getSelectionCount()

Возвращает количество выбранных путей.

isPathSelected

boolean isPathSelected(TreePath path)

Возвращает true, если путь path присутствует в текущем выборе.

isSelectionEmpty

boolean isSelectionEmpty()

Возвращает true, если выбор пуст.

clearSelection

void clearSelection()

Очищает текущий выбор. Если это изменение текущего выбора, слушатели выбора уведомляются.

setRowMapper

void setRowMapper(RowMapper newMapper)

Устанавливает экземпляр RowMapper. Этот экземпляр используется для определения строки для конкретного TreePath.

getRowMapper

RowMapper getRowMapper()

Возвращает экземпляр RowMapper, способный сопоставить TreePath со строкой.

getSelectionRows

int[] getSelectionRows()

Возвращает все выбранные строки. Возвращает null (или пустой массив), если нет выбранных TreePath или RowMapper не установлен.

getMinSelectionRow

int getMinSelectionRow()

Возвращает наименьшее значение, полученное от RowMapper для текущего набора выбранных TreePath. Если ничего не выбрано или RowMapper не установлен, возвращает -1.

getMaxSelectionRow

int getMaxSelectionRow()

Возвращает наибольшее значение, полученное от RowMapper для текущего набора выбранных TreePath. Если ничего не выбрано или RowMapper не установлен, возвращает -1.

isRowSelected

boolean isRowSelected(int row)

Возвращает true, если строка с идентификатором row выбрана.

resetRowSelection

void resetRowSelection()

Обновляет отображение объекта из TreePath в строки. Это должно быть вызвано, когда отображение из TreePath в целые числа изменилось (например, узел был развернут).

Обычно вам не нужно вызывать это; JTree и его связанные слушатели вызовут это за вас. Если вы реализуете свой собственный класс представления, то вам нужно будет вызвать это.

getLeadSelectionRow

int getLeadSelectionRow()

Возвращает индекс ведущего выбора. То есть последний добавленный индекс.

getLeadSelectionPath

TreePath getLeadSelectionPath()

Возвращает последний добавленный путь. Он может отличаться от свойства leadSelectionPath, поддерживаемого JTree.

addPropertyChangeListener

void addPropertyChangeListener(PropertyChangeListener listener)

Добавляет PropertyChangeListener в список слушателей. Слушатель регистрируется для всех свойств.

PropertyChangeEvent будет сгенерирован при изменении режима выбора.

Параметры:
listener - добавляемый PropertyChangeListener

removePropertyChangeListener

void removePropertyChangeListener(PropertyChangeListener listener)

Удаляет PropertyChangeListener из списка слушателей. Удаляет PropertyChangeListener, зарегистрированный для всех свойств.

Параметры:
listener - удаляемый PropertyChangeListener

addTreeSelectionListener

void addTreeSelectionListener(TreeSelectionListener x)

Добавляет x в список слушателей, которые уведомляются каждый раз, когда изменяется набор выбранных TreePath.

Параметры:
x - новый добавляемый слушатель

removeTreeSelectionListener

void removeTreeSelectionListener(TreeSelectionListener x)

Удаляет x из списка слушателей, которые уведомляются каждый раз, когда изменяется набор выбранных TreePath.

Параметры:
x - удаляемый слушатель

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API