-
- All Superinterfaces:
- ItemSelectable
- All Known Implementing Classes:
- DefaultButtonModel, JToggleButton.ToggleButtonModel
public interface ButtonModel extends ItemSelectable
State model for buttons.This model is used for regular buttons, as well as check boxes and radio buttons, which are special kinds of buttons. In practice, a button's UI takes the responsibility of calling methods on its model to manage the state, as detailed below:
In simple terms, pressing and releasing the mouse over a regular button triggers the button and causes and
ActionEventto be fired. The same behavior can be produced via a keyboard key defined by the look and feel of the button (typically the SPACE BAR). Pressing and releasing this key while the button has focus will give the same results. For check boxes and radio buttons, the mouse or keyboard equivalent sequence just described causes the button to become selected.In details, the state model for buttons works as follows when used with the mouse:
Pressing the mouse on top of a button makes the model both armed and pressed. As long as the mouse remains down, the model remains pressed, even if the mouse moves outside the button. On the contrary, the model is only armed while the mouse remains pressed within the bounds of the button (it can move in or out of the button, but the model is only armed during the portion of time spent within the button). A button is triggered, and anActionEventis fired, when the mouse is released while the model is armed - meaning when it is released over top of the button after the mouse has previously been pressed on that button (and not already released). Upon mouse release, the model becomes unarmed and unpressed.In details, the state model for buttons works as follows when used with the keyboard:
Pressing the look and feel defined keyboard key while the button has focus makes the model both armed and pressed. As long as this key remains down, the model remains in this state. Releasing the key sets the model to unarmed and unpressed, triggers the button, and causes anActionEventto be fired.
-
-
Method Summary
Methods Modifier and Type Method and Description voidaddActionListener(ActionListener l)Adds anActionListenerto the model.voidaddChangeListener(ChangeListener l)Adds aChangeListenerto the model.voidaddItemListener(ItemListener l)Adds anItemListenerto the model.StringgetActionCommand()Returns the action command string for the button.intgetMnemonic()Gets the keyboard mnemonic for the button.booleanisArmed()Indicates partial commitment towards triggering the button.booleanisEnabled()Indicates if the button can be selected or triggered by an input device, such as a mouse pointer.booleanisPressed()Indicates if the button is pressed.booleanisRollover()Indicates that the mouse is over the button.booleanisSelected()Indicates if the button has been selected.voidremoveActionListener(ActionListener l)Removes anActionListenerfrom the model.voidremoveChangeListener(ChangeListener l)Removes aChangeListenerfrom the model.voidremoveItemListener(ItemListener l)Removes anItemListenerfrom the model.voidsetActionCommand(String s)Sets the action command string that gets sent as part of theActionEventwhen the button is triggered.voidsetArmed(boolean b)Marks the button as armed or unarmed.voidsetEnabled(boolean b)Enables or disables the button.voidsetGroup(ButtonGroup group)Identifies the group the button belongs to -- needed for radio buttons, which are mutually exclusive within their group.voidsetMnemonic(int key)Sets the keyboard mnemonic (shortcut key or accelerator key) for the button.voidsetPressed(boolean b)Sets the button to pressed or unpressed.voidsetRollover(boolean b)Sets or clears the button's rollover statevoidsetSelected(boolean b)Selects or deselects the button.-
Methods inherited from interface java.awt.ItemSelectable
getSelectedObjects
-
-
-
-
Method Detail
-
isArmed
boolean isArmed()
Indicates partial commitment towards triggering the button.- Returns:
trueif the button is armed, and ready to be triggered- See Also:
setArmed(boolean)
-
isSelected
boolean isSelected()
Indicates if the button has been selected. Only needed for certain types of buttons - such as radio buttons and check boxes.- Returns:
trueif the button is selected
-
isEnabled
boolean isEnabled()
Indicates if the button can be selected or triggered by an input device, such as a mouse pointer.- Returns:
trueif the button is enabled
-
isPressed
boolean isPressed()
Indicates if the button is pressed.- Returns:
trueif the button is pressed
-
isRollover
boolean isRollover()
Indicates that the mouse is over the button.- Returns:
trueif the mouse is over the button
-
setArmed
void setArmed(boolean b)
Marks the button as armed or unarmed.- Parameters:
b- whether or not the button should be armed
-
setSelected
void setSelected(boolean b)
Selects or deselects the button.- Parameters:
b-trueselects the button,falsedeselects the button
-
setEnabled
void setEnabled(boolean b)
Enables or disables the button.- Parameters:
b- whether or not the button should be enabled- See Also:
isEnabled()
-
setPressed
void setPressed(boolean b)
Sets the button to pressed or unpressed.- Parameters:
b- whether or not the button should be pressed- See Also:
isPressed()
-
setRollover
void setRollover(boolean b)
Sets or clears the button's rollover state- Parameters:
b- whether or not the button is in the rollover state- See Also:
isRollover()
-
setMnemonic
void setMnemonic(int key)
Sets the keyboard mnemonic (shortcut key or accelerator key) for the button.- Parameters:
key- an int specifying the accelerator key
-
getMnemonic
int getMnemonic()
Gets the keyboard mnemonic for the button.- Returns:
- an int specifying the accelerator key
- See Also:
setMnemonic(int)
-
setActionCommand
void setActionCommand(String s)
Sets the action command string that gets sent as part of theActionEventwhen the button is triggered.- Parameters:
s- theStringthat identifies the generated event- See Also:
getActionCommand(),ActionEvent.getActionCommand()
-
getActionCommand
String getActionCommand()
Returns the action command string for the button.- Returns:
- the
Stringthat identifies the generated event - See Also:
setActionCommand(java.lang.String)
-
setGroup
void setGroup(ButtonGroup group)
Identifies the group the button belongs to -- needed for radio buttons, which are mutually exclusive within their group.- Parameters:
group- theButtonGroupthe button belongs to
-
addActionListener
void addActionListener(ActionListener l)
Adds anActionListenerto the model.- Parameters:
l- the listener to add
-
removeActionListener
void removeActionListener(ActionListener l)
Removes anActionListenerfrom the model.- Parameters:
l- the listener to remove
-
addItemListener
void addItemListener(ItemListener l)
Adds anItemListenerto the model.- Specified by:
addItemListenerin interfaceItemSelectable- Parameters:
l- the listener to add- See Also:
ItemEvent
-
removeItemListener
void removeItemListener(ItemListener l)
Removes anItemListenerfrom the model.- Specified by:
removeItemListenerin interfaceItemSelectable- Parameters:
l- the listener to remove- See Also:
ItemEvent
-
addChangeListener
void addChangeListener(ChangeListener l)
Adds aChangeListenerto the model.- Parameters:
l- the listener to add
-
removeChangeListener
void removeChangeListener(ChangeListener l)
Removes aChangeListenerfrom the model.- Parameters:
l- the listener to remove
-
-
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 11/06/2005, zuletzt geändert 04/03/2020
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/java-api-rf-javax/swing/ButtonModel.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.
Referenzen
Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor dieser Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.