Spec-Zone.ru › OpenJDK 17

Интерфейс TreeSelectionModel

Все известные реализующие классы:
DefaultTreeSelectionModel, JTree.EmptySelectionModel
public interface TreeSelectionModel
Этот интерфейс представляет текущее состояние выбора для компонента дерева. Для получения информации и примеров использования моделей выбора дерева, см. Как использовать деревья в Java Tutorial.

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

Модель TreeSelectionModel может быть настроена для разрешения только одного пути (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 final int CONTIGUOUS_TREE_SELECTION
Выбор может быть только смежным.
static final int DISCONTIGUOUS_TREE_SELECTION
Выбор может содержать любое количество элементов, которые необязательно смежны.
static final 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
Выбор может содержать только один путь за раз.
См. также:
  • Constant Field Values

CONTIGUOUS_TREE_SELECTION

static final int CONTIGUOUS_TREE_SELECTION
Выбор может быть только непрерывным. Это будет применено только в том случае, если предоставлен экземпляр RowMapper. То есть, если RowMapper не установлен, это ведет себя так же, как DISCONTIGUOUS_TREE_SELECTION.
См. также:
  • Constant Field Values

DISCONTIGUOUS_TREE_SELECTION

static final int DISCONTIGUOUS_TREE_SELECTION
Выбор может содержать любое количество элементов, которые не обязательно являются непрерывными.
См. также:
  • Constant Field Values

Подробное описание методов

setSelectionMode

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

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

Параметры:
mode - режим выбора, который нужно установить

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, находится в текущем выборе.
Параметры:
path - путь для поиска
Возвращает:
находится ли path в текущем выборе

isSelectionEmpty

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

clearSelection

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

setRowMapper

void setRowMapper(RowMapper newMapper)
Устанавливает экземпляр RowMapper. Этот экземпляр используется для определения строки для определенного TreePath.
Параметры:
newMapper - RowMapper, который нужно установить

getRowMapper

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

getSelectionRows

int[] getSelectionRows()
Возвращает все текущие выбранные строки. Это вернет null (или пустой массив), если нет выбранных TreePaths или RowMapper не установлен.
Возвращает:
все текущие выбранные строки

getMinSelectionRow

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

getMaxSelectionRow

int getMaxSelectionRow()
Возвращает наибольшее значение, полученное из RowMapper для текущего набора выбранных TreePaths. Если ничего не выбрано или RowMapper отсутствует, это вернет -1.
Возвращает:
наибольшее значение, полученное из RowMapper для текущего набора выбранных TreePaths

isRowSelected

boolean isRowSelected(int row)
Возвращает true, если строка, определенная row, выбрана.
Параметры:
row - строка для проверки
Возвращает:
выбрана ли строка

resetRowSelection

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

Обычно вам не нужно вызывать это; 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 в список слушателей, которые уведомляются каждый раз, когда изменяется набор выбранных TreePaths.
Параметры:
x - новый слушатель для добавления

removeTreeSelectionListener

void removeTreeSelectionListener(TreeSelectionListener x)
Удаляет x из списка слушателей, которые уведомляются каждый раз, когда изменяется набор выбранных TreePaths.
Параметры:
x - удаляемый слушатель

© 1993, 2021, 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/17/docs/api/java.desktop/javax/swing/tree/TreeSelectionModel.html

Spec-Zone.ru

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