Re: AbstractAction
- From: Thomas Fritsch <i.dont.like.spam@xxxxxxxxxxx>
- Date: Fri, 30 Jun 2006 09:52:22 GMT
toton wrote:
[reordered]
Thomas Fritsch wrote:> Thanks for the answer.
toton wrote:
From Java 1.5 or lower version, can an Action be used for JCheckBox &
JCheckBoxMenuItem pair or JToggleButton & JCheckBoxMenuItem pair?
JCheckBox, JCheckBoxMenuItem, JToggleButton and JCheckBoxMenuItem all
have a constructor taking an Action. They also have a setAction(Action)
method inherited from AbstractButton.
Java 1.6 has Action.SELECTED_KEY but 1.5 doesnt have.
So what?
Also how to execute an Action from program? like JButton has a
doClick method. I want to execute an action from program even when the
actual button or menuitem is removed from gui, thus i dont have an
reference for the actual gui component.
You can do
Action a = ...;
ActionEvent e =
new ActionEvent(this, ActionEvent.ACTION_PERFORMED, "bla";
a.actionPerformed(e);
> For programatically performing action, I used the command pattern
> (design patterns by GoF) which extends AbstractAction & has an execute
> method. A convinent way.
> For the first question i am still unclear that how an action will know
> the component's selected state & take decision as SELECTED_KEY is
> missing.
ActionEvent has (inherited from Action) a getSource() method. Calling it you usually get the component which raised the event. If the component is a JCheckBox/JToggleButton/... you can cast it and call its isSelected() method.
> In that case I have to pass the actual component in the
> action? (Then for the components constructor wont work, neew to use
> setAction instead, also the very basic idea of using one action for
> multiple component will be violeted, as two action is needed for those
> two components).
> Or I need to pass the selected state to action additionally.
--
Thomas
.
- Follow-Ups:
- Re: AbstractAction
- From: toton
- Re: AbstractAction
- References:
- AbstractAction
- From: toton
- Re: AbstractAction
- From: Thomas Fritsch
- Re: AbstractAction
- From: toton
- AbstractAction
- Prev by Date: Re: help needed @ Taskbar dimensions (screen size- taskbar size)
- Next by Date: Re: AbstractAction
- Previous by thread: Re: AbstractAction
- Next by thread: Re: AbstractAction
- Index(es):