public class ActionExample1 extends Application
@Action basics.
A trivial @Action example: the buttons set/clear the Frame's title:
public class ActionExample1 extends Application {
@Action public void setTitle() {
appFrame.setTitle(textField.getText());
}
@Action public void clearTitle() {
appFrame.setTitle("");
}
// ...
}
The only wrinkle worth noting is that the Action objects we've
created are going to call the methods on this object. So
when we lookup the ActionMap for this class, we have to pass along
the ActionExample1 instance as well:
ApplicationContext ac = ApplicationContext.getInstance();
ActionMap actionMap = ac.getActionMap(getClass(), this);
setTitleButton.setAction(actionMap.get("setTitle"));
clearTitleButton.setAction(actionMap.get("clearTitle"));
Since our @Actions have been defined in the Application
subclass itself, we can use the no-argument version of getActionMap(),
which returns the ActionMap for the application:
ApplicationContext ac = ApplicationContext.getInstance();
ActionMap actionMap = ac.getActionMap();
setTitleButton.setAction(actionMap.get("setTitle"));
clearTitleButton.setAction(actionMap.get("clearTitle"));
Application.ExitListener| Constructor and Description |
|---|
ActionExample1() |
| Modifier and Type | Method and Description |
|---|---|
void |
clearTitle() |
static void |
main(java.lang.String[] args) |
void |
setTitle() |
protected void |
startup()
Responsible for starting the application; for creating and showing
the initial GUI.
|
addExitListener, end, exit, exit, getContext, getExitListeners, getInstance, getInstance, hide, initialize, launch, quit, ready, removeExitListener, show, shutdownaddPropertyChangeListener, addPropertyChangeListener, firePropertyChange, firePropertyChange, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener@Action public void setTitle()
@Action public void clearTitle()
protected void startup()
Application
This method is called by the static launch method,
subclasses must override it. It runs on the event dispatching
thread.
startup in class ApplicationApplication.launch(java.lang.Class<T>, java.lang.String[]),
Application.initialize(java.lang.String[]),
Application.shutdown()public static void main(java.lang.String[] args)