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