Spec-Zone .ru
спецификации, руководства, описания, API
|
public interface Action extends ActionListener
Action
интерфейс обеспечивает полезное расширение ActionListener
интерфейс в случаях, где к той же самой функциональности могут получить доступ несколько средств управления. В дополнение к actionPerformed
метод, определенный ActionListener
интерфейс, этот интерфейс позволяет приложению определять в единственном месте:
Этот интерфейс может быть добавлен к существующему классу или использоваться, чтобы создать адаптер (обычно, разделяя на подклассы AbstractAction
). Action
объект может тогда быть добавлен к многократному Action
- осведомленные контейнеры и соединенный с Action
- способные компоненты. Средства управления GUI могут тогда быть активированы или деактивированы внезапно, вызывая Action
объект setEnabled
метод.
Отметьте это Action
реализации имеют тенденцию быть более дорогими с точки зрения хранения чем типичное ActionListener
, который не предлагает преимущества централизованного управления функциональности и широковещательной передачи изменений свойства. Поэтому следует заботиться только использованию Action
s, где их преимущества требуются, и используют простой ActionListener
s в другом месте.
Action
Многие из компонентов Swing имеют Action
свойство. Когда Action
устанавливается на компоненте, следующие вещи происходят:
Action
добавляется как ActionListener
к компоненту. Action
. PropertyChangeListener
на Action
так, чтобы компонент мог изменить свои свойства, чтобы отразить изменения в Action
's свойства. Следующая таблица описывает свойства, используемые Swing
компоненты та поддержка Actions
. В таблице кнопка обращается к любому AbstractButton
подкласс, который включает не только JButton
но также и классы такой как JMenuItem
. Если иначе не утверждено, a null
значение свойства в Action
(или a Action
это null
) результаты в соответствующем свойстве кнопки, устанавливаемом в null
.
Компонентное Свойство | Компоненты | Ключ действия | Примечания |
---|---|---|---|
enabled
| Все | isEnabled метод | |
toolTipText
| Все | SHORT_DESCRIPTION
| |
actionCommand
| Все | ACTION_COMMAND_KEY
| |
mnemonic
| Все кнопки | MNEMONIC_KEY
| A null значение или Action результаты в кнопке mnemonic свойство, устанавливаемое в '\0' . |
text
| Все кнопки | NAME
| Если Вы не хотите, чтобы текст кнопки зеркально отразил тот из Action , установите свойство hideActionText к true . Если hideActionText true , установка Action изменяет текст кнопки к null и любые изменения к NAME игнорируются. hideActionText полезно для кнопок на панели инструментов, которые обычно только показывают Icon . JToolBar.add(Action) устанавливает свойство в true если Action имеет не -null значение для LARGE_ICON_KEY или SMALL_ICON . |
displayedMnemonicIndex
| Все кнопки | DISPLAYED_MNEMONIC_INDEX_KEY
| Если значение DISPLAYED_MNEMONIC_INDEX_KEY вне границ текста, он игнорируется. Когда setAction вызывается, если значение от Action null , выведенный на экран мнемонический индекс не обновляется. В любых последующих изменениях к DISPLAYED_MNEMONIC_INDEX_KEY , null обрабатывается как-1. |
icon
| Все кнопки кроме JCheckBox , JToggleButton и JRadioButton . | также LARGE_ICON_KEY или SMALL_ICON
| JMenuItem подклассы только используют SMALL_ICON . Все другие кнопки будут использовать LARGE_ICON_KEY ; если значение null они используют SMALL_ICON . |
accelerator
| Все JMenuItem подклассы, за исключением JMenu . | ACCELERATOR_KEY
| |
selected
| JToggleButton , JCheckBox , JRadioButton , JCheckBoxMenuItem и JRadioButtonMenuItem
| SELECTED_KEY
| Компоненты, которые соблюдают это свойство только, используют значение, если это non-null . Например, если Вы устанавливаете Action у этого есть a null значение для SELECTED_KEY на a JToggleButton , JToggleButton не будет обновлять это выбрало состояние всегда. Точно так же любое время JToggleButton 's выбранные изменения состояния это только задержит значение на Action если Action имеет a non-null значение для SELECTED_KEY . Компоненты, которые соблюдают это свойство, сохраняют свое выбранное состояние в синхронизации с этим свойством. Когда то же самое Action используется с многократными компонентами, все компоненты сохраняют свое выбранное состояние в синхронизации с этим свойством. Взаимоисключающие кнопки, такой как JToggleButton s в a ButtonGroup , вынудите только одну из кнопок быть выбранной. Также, не используйте то же самое Action это определяет значение для SELECTED_KEY свойство с многократными взаимоисключающими кнопками. |
JPopupMenu
, JToolBar
и JMenu
все обеспечивают методы удобства для того, чтобы они создали компонент и установили Action
на соответствующем компоненте. Обратитесь к каждому из этих классов для получения дополнительной информации.
Action
использование PropertyChangeListener
сообщать слушателям Action
изменился. Бобовая спецификация указывает на это a null
имя свойства может использоваться, чтобы указать, что многократные значения изменились. Компонентами Swing по умолчанию, которые берут Action
не обрабатывайте такое изменение. Указать, что Swing должен обработать null
согласно бобовому набору спецификации системное свойство swing.actions.reconfigureOnNull
к String
значение true
.
AbstractAction
Модификатор и Тип | Поле и Описание |
---|---|
static String |
ACCELERATOR_KEY
Ключ, используемый для того, чтобы сохранить a
KeyStroke использоваться в качестве акселератора для действия. |
static String |
ACTION_COMMAND_KEY
Ключ, используемый, чтобы определить команду
String для ActionEvent это будет создаваться когда Action собирается быть уведомленным как результат нахождения в a Keymap связанный с a JComponent . |
static String |
ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ
Не в настоящий момент используемый.
|
static String |
DISPLAYED_MNEMONIC_INDEX_KEY
Ключ, используемый для того, чтобы сохранить
Integer это соответствует индексу в тексте (идентифицированный NAME свойство), в котором должно быть представлено художественное оформление для мнемосхемы. |
static String |
LARGE_ICON_KEY
Ключ, используемый для того, чтобы сохранить
Icon . |
static String |
LONG_DESCRIPTION
Ключ, используемый для того, чтобы сохранить более длинное
String описание для действия, мог использоваться для контекстно-зависимой справки. |
static String |
MNEMONIC_KEY
Ключ, используемый для того, чтобы сохранить
Integer это соответствует одному из KeyEvent коды ключа. |
static String |
ИМЯ
Ключ, используемый для того, чтобы сохранить
String имя для действия, используемого для меню или кнопки. |
static String |
SELECTED_KEY
Ключ, используемый для того, чтобы сохранить a
Boolean это соответствует выбранному состоянию. |
static String |
SHORT_DESCRIPTION
Ключ, используемый для того, чтобы сохранить короткое
String описание для действия, используемого для текста подсказки. |
static String |
SMALL_ICON
Ключ, используемый для того, чтобы сохранить маленькое
Icon , такой как ImageIcon . |
Модификатор и Тип | Метод и Описание |
---|---|
void |
addPropertyChangeListener(PropertyChangeListener listener)
Добавляет a
PropertyChange слушатель. |
Объект |
getValue(String key)
Получает одно из свойств этого объекта, используя связанный ключ.
|
boolean |
isEnabled()
Возвращает включенное состояние
Action . |
void |
putValue(String key, Object value)
Наборы одно из свойств этого объекта, используя связанный ключ.
|
void |
removePropertyChangeListener(PropertyChangeListener listener)
Удаляет a
PropertyChange слушатель. |
void |
setEnabled(boolean b)
Устанавливает включенное состояние
Action . |
actionPerformed
static final String DEFAULT
static final String NAME
String
имя для действия, используемого для меню или кнопки.static final String SHORT_DESCRIPTION
String
описание для действия, используемого для текста подсказки.static final String LONG_DESCRIPTION
String
описание для действия, мог использоваться для контекстно-зависимой справки.static final String SMALL_ICON
Icon
, такой как ImageIcon
. Это обычно используется с меню такой как JMenuItem
. Если то же самое Action
используется с меню и кнопками, Вы будете обычно определять обоих a SMALL_ICON
и a LARGE_ICON_KEY
. Меню будет использовать SMALL_ICON
и кнопка будет использовать LARGE_ICON_KEY
.
static final String ACTION_COMMAND_KEY
String
для ActionEvent
это будет создаваться когда Action
собирается быть уведомленным как результат нахождения в a Keymap
связанный с a JComponent
.static final String ACCELERATOR_KEY
KeyStroke
использоваться в качестве акселератора для действия.static final String MNEMONIC_KEY
Integer
это соответствует одному из KeyEvent
коды ключа. Значение обычно используется, чтобы определить мнемосхему. Например: myAction.putValue(Action.MNEMONIC_KEY, KeyEvent.VK_A)
устанавливает мнемосхему myAction
к, в то время как myAction.putValue(Action.MNEMONIC_KEY, KeyEvent.getExtendedKeyCodeForChar('?'))
устанавливает мнемосхему myAction
к Кириллической букве "Ef".static final String SELECTED_KEY
Boolean
это соответствует выбранному состоянию. Это обычно используется только для компонентов, у которых есть значимое состояние выбора. Например, JRadioButton
и JCheckBox
используйте это, но экземпляры JMenu
не делать. Это свойство отличается от других, в которых оно и читается компонентом и набором компонентом. Например, если Action
присоединен к a JCheckBox
выбранное состояние JCheckBox
будет установлен от того из Action
. Если пользователь щелкает JCheckBox
выбранное состояние JCheckBox
и Action
будет оба обновлен.
Отметьте: значение этого поля снабжается префиксом 'Swing', чтобы избежать возможных коллизий с существующим Actions
.
static final String DISPLAYED_MNEMONIC_INDEX_KEY
Integer
это соответствует индексу в тексте (идентифицированный NAME
свойство), в котором должно быть представлено художественное оформление для мнемосхемы. Если значение этого свойства будет больше чем или равным длине текста, то это будет обработанный как-1. Отметьте: значение этого поля снабжается префиксом 'Swing', чтобы избежать возможных коллизий с существующим Actions
.
AbstractButton.setDisplayedMnemonicIndex(int)
, Постоянные Значения полейstatic final String LARGE_ICON_KEY
Icon
. Это обычно используется кнопками, такой как JButton
и JToggleButton
. Если то же самое Action
используется с меню и кнопками, Вы будете обычно определять обоих a SMALL_ICON
и a LARGE_ICON_KEY
. Меню будет использовать SMALL_ICON
и кнопка LARGE_ICON_KEY
.
Отметьте: значение этого поля снабжается префиксом 'Swing', чтобы избежать возможных коллизий с существующим Actions
.
Object getValue(String key)
void putValue(String key, Object value)
PropertyChangeEvent
отправляется слушателям.key
- a String
содержа ключvalue
- Object
значениеvoid setEnabled(boolean b)
Action
. Когда включено, любой компонент, связанный с этим объектом, является активным и в состоянии запустить этот объект actionPerformed
метод. Если значение изменилось, a PropertyChangeEvent
отправляется слушателям.b
- истина, чтобы включить этому Action
, ложь, чтобы отключить этоboolean isEnabled()
Action
. Когда включено, любой компонент, связанный с этим объектом, является активным и в состоянии запустить этот объект actionPerformed
метод.Action
включаетсяvoid addPropertyChangeListener(PropertyChangeListener listener)
PropertyChange
слушатель. Контейнеры и присоединенные компоненты используют эти методы, чтобы зарегистрировать интерес к этому Action
объект. Когда его включенное состояние или другие изменения свойства, зарегистрированным слушателям сообщают об изменении.listener
- a PropertyChangeListener
объектvoid removePropertyChangeListener(PropertyChangeListener listener)
PropertyChange
слушатель.listener
- a PropertyChangeListener
объектaddPropertyChangeListener(java.beans.PropertyChangeListener)
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.