Интерфейс ButtonModel
- Все суперинтерфейсы:
ItemSelectable
- Все известные реализующие классы:
-
DefaultButtonModel,JToggleButton.ToggleButtonModel
public interface ButtonModel extends ItemSelectable
Модель состояния для кнопок.
Эта модель используется для обычных кнопок, а также для флажков и радиокнопок, которые являются особыми видами кнопок. На практике пользовательский интерфейс кнопки отвечает за вызов методов своей модели для управления состоянием, как подробно описано ниже:
Проще говоря, нажатие и отпускание мыши над обычной кнопкой активирует кнопку и вызывает выполнение ActionEvent. То же поведение можно получить с помощью клавиши на клавиатуре, определенной внешним видом кнопки (обычно клавиша ПРОБЕЛ). Нажатие и отпускание этой клавиши, когда кнопка имеет фокус, даст тот же результат. Для флажков и радиокнопок описанная последовательность действий мышью или клавиатурой приводит к тому, что кнопка становится выбранной.
Подробно, модель состояния для кнопок работает следующим образом при использовании мыши:
Нажатие мыши на кнопку приводит к тому, что модель становится как вооруженной, так и нажатой. Пока кнопка нажата, модель остается нажатой, даже если курсор мыши перемещается за пределы кнопки. Напротив, модель вооружена только пока мышь остается нажатой внутри границ кнопки (она может двигаться внутрь или наружу кнопки, но модель вооружена только в течение времени, проведенного внутри кнопки). Кнопка активируется, и срабатывает ActionEvent, когда мышь отпускается, при условии, что модель вооружена — то есть когда она отпускается над кнопкой после того, как мышь была предварительно нажата на эту кнопку (и не отпускалась ранее). После отпускания мыши модель становится разоруженной и не нажатой.
Подробно, модель состояния для кнопок работает следующим образом при использовании клавиатуры:
Нажатие клавиши, определенной внешним видом, на клавиатуре, когда у кнопки есть фокус, приводит к тому, что модель становится как вооруженной, так и нажатой. Пока эта клавиша удерживается, модель остается в этом состоянии. Отпускание клавиши устанавливает модель в разоруженное и ненажатое состояние, активирует кнопку и вызывает выполнение ActionEvent.
- С момента:
- 1.2
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | addActionListener(ActionListener l) | Добавляет |
void | addChangeListener(ChangeListener l) | Добавляет |
void | addItemListener(ItemListener l) | Добавляет |
String | getActionCommand() | Возвращает строку команды действия для кнопки. |
default ButtonGroup | getGroup() | Возвращает группу, к которой принадлежит кнопка. |
int | getMnemonic() | Получает мнемоническую клавишу клавиатуры для кнопки. |
boolean | isArmed() | Указывает частичное выполнение операции активации кнопки. |
boolean | isEnabled() | Указывает, может ли кнопка быть выбрана или активирована устройством ввода, таким как указатель мыши. |
boolean | isPressed() | Указывает, нажата ли кнопка. |
boolean | isRollover() | Указывает, что курсор мыши над кнопкой. |
boolean | isSelected() | Указывает, выбрана ли кнопка. |
void | removeActionListener(ActionListener l) | Удаляет |
void | removeChangeListener(ChangeListener l) | Удаляет |
void | removeItemListener(ItemListener l) | Удаляет |
void | setActionCommand(String s) | Устанавливает строку команды действия, которая отправляется как часть |
void | setArmed(boolean b) | Помечает кнопку как вооруженную или разоруженную. |
void | setEnabled(boolean b) | Включает или выключает кнопку. |
void | setGroup(ButtonGroup group) | Определяет группу, к которой принадлежит кнопка — необходимо для радиокнопок, которые взаимоисключающие в своей группе. |
void | setMnemonic(int key) | Устанавливает мнемоническую клавишу клавиатуры (горячую клавишу или клавишу быстрого доступа) для кнопки. |
void | setPressed(boolean b) | Устанавливает кнопку в нажатое или ненажатое состояние. |
void | setRollover(boolean b) | Устанавливает или сбрасывает состояние перехода кнопки. |
void | setSelected(boolean b) | Выбирает или отменяет выбор кнопки. |
Методы, объявленные в интерфейсе java.awt.ItemSelectable
getSelectedObjects Методы
isArmed
boolean isArmed()
Указывает частичное подтверждение нажатия кнопки.
- Возвращает:
-
trueесли кнопка подготовлена к нажатию - См. также:
setArmed(boolean)
isSelected
boolean isSelected()
Указывает, выбрана ли кнопка. Необходимо только для определенных типов кнопок, таких как радиокнопки и флажки.
- Возвращает:
-
trueесли кнопка выбрана
isEnabled
boolean isEnabled()
Указывает, можно ли выбрать или нажать кнопку с помощью устройства ввода, такого как указатель мыши.
- Возвращает:
-
trueесли кнопка активна
isPressed
boolean isPressed()
Указывает, нажата ли кнопка.
- Возвращает:
-
trueесли кнопка нажата
isRollover
boolean isRollover()
Указывает, что курсор мыши находится над кнопкой.
- Возвращает:
-
trueесли курсор находится над кнопкой
setArmed
void setArmed(boolean b)
Отмечает кнопку как готовую к нажатию или неготовую.
- Параметры:
-
b-bнужно ли подготовить кнопку к нажатию
setSelected
void setSelected(boolean b)
Выбирает или отменяет выбор кнопки.
- Параметры:
-
b-trueвыбирает кнопку,falseотменяет выбор кнопки
setEnabled
void setEnabled(boolean b)
Включает или отключает кнопку.
- Параметры:
-
b- нужно ли активировать кнопку - См. также:
isEnabled()
setPressed
void setPressed(boolean b)
Устанавливает состояние кнопки в нажатое или не нажатое.
- Параметры:
-
b- нужно ли нажать кнопку - См. также:
isPressed()
setRollover
void setRollover(boolean b)
Устанавливает или очищает состояние наведения курсора на кнопку.
- Параметры:
-
b- нужно ли установить состояние наведения курсора - См. также:
isRollover()
setMnemonic
void setMnemonic(int key)
Устанавливает мнемоническую клавишу (сочетание клавиш или клавишу ускорения) для кнопки.
- Параметры:
-
key- целое число, определяющее клавишу ускорения
getMnemonic
int getMnemonic()
Получает мнемоническую клавишу для кнопки.
- Возвращает:
- целое число, определяющее клавишу ускорения
- См. также:
setMnemonic(int)
setActionCommand
void setActionCommand(String s)
Устанавливает строку команды действия, которая передается в качестве части ActionEvent при нажатии кнопки.
- Параметры:
-
s- строка, идентифицирующая сгенерированное событие - См. также:
-
getActionCommand(),ActionEvent.getActionCommand()
getActionCommand
String getActionCommand()
Возвращает строку команды действия для кнопки.
- Возвращает:
- строку, идентифицирующую сгенерированное событие
- См. также:
setActionCommand(java.lang.String)
setGroup
void setGroup(ButtonGroup group)
Определяет группу, к которой принадлежит кнопка (необходимо для радиокнопок, которые взаимно исключают друг друга в своей группе).
- Параметры:
-
group- группа, к которой принадлежит кнопка
getGroup
default ButtonGroup getGroup()
Возвращает группу, к которой принадлежит кнопка. Обычно используется с радиокнопками, которые взаимно исключают друг друга в своей группе.
- Требования к реализации:
- Стандартная реализация этого метода возвращает
null. Подклассы должны возвращать группу, установленную методом setGroup(). - Возвращает:
- группу, к которой принадлежит кнопка
- С:
- 10
addActionListener
void addActionListener(ActionListener l)
Добавляет ActionListener к модели.
- Параметры:
-
l- слушатель для добавления
removeActionListener
void removeActionListener(ActionListener l)
Удаляет ActionListener из модели.
- Параметры:
-
l- слушатель для удаления
addItemListener
void addItemListener(ItemListener l)
Добавляет ItemListener к модели.
- Определено в:
-
addItemListenerв интерфейсеItemSelectable - Параметры:
-
l- слушатель для добавления - См. также:
ItemEvent
removeItemListener
void removeItemListener(ItemListener l)
Удаляет ItemListener из модели.
- Определено в:
-
removeItemListenerв интерфейсеItemSelectable - Параметры:
-
l- слушатель для удаления - См. также:
ItemEvent
addChangeListener
void addChangeListener(ChangeListener l)
Добавляет ChangeListener к модели.
- Параметры:
-
l- слушатель для добавления
removeChangeListener
void removeChangeListener(ChangeListener l)
Удаляет ChangeListener из модели.
- Параметры:
-
l- слушатель для удаления
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/ButtonModel.html