|
Préférences
Moteurs de recherche
|
||||||||||||||||||||||||
JavaTM 2 Platform Std. Ed. v1.4.2
java.beans
|
Constructor Summary | |
EventHandler(Object target,
String action,
String eventPropertyName,
String listenerMethodName)
Creates a new EventHandler object;
you generally use one of the create methods
instead of invoking this constructor directly. |
Method Summary | |
static Object |
create(Class listenerInterface,
Object target,
String action)
Creates an implementation of listenerInterface in which
all of the methods in the listener interface apply
the handler's action to the target . |
static Object |
create(Class listenerInterface,
Object target,
String action,
String eventPropertyName)
Creates an implementation of listenerInterface in which
all of the methods pass the value of the event
expression, eventPropertyName , to the final method in the
statement, action , which is applied to the target . |
static Object |
create(Class listenerInterface,
Object target,
String action,
String eventPropertyName,
String listenerMethodName)
Creates an implementation of listenerInterface in which
the method named listenerMethodName
passes the value of the event expression, eventPropertyName ,
to the final method in the statement, action , which
is applied to the target . |
String |
getAction()
Returns the name of the target's writable property that this event handler will set, or the name of the method that this event handler will invoke on the target. |
String |
getEventPropertyName()
Returns the property of the event that should be used in the action applied to the target. |
String |
getListenerMethodName()
Returns the name of the method that will trigger the action. |
Object |
getTarget()
Returns the object to which this event handler will send a message. |
Object |
invoke(Object proxy,
Method method,
Object[] arguments)
Extract the appropriate property value from the event and pass it to the action associated with this EventHandler . |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public EventHandler(Object target, String action, String eventPropertyName, String listenerMethodName)
EventHandler
object;
you generally use one of the create
methods
instead of invoking this constructor directly.
target
- the object that will perform the actionaction
- the (possibly qualified) name of a writable property or method on the targeteventPropertyName
- the (possibly qualified) name of a readable property of the incoming eventlistenerMethodName
- the name of the method in the listener interface that should trigger the actionEventHandler
,
create(Class, Object, String, String, String)
,
getTarget()
,
getAction()
,
getEventPropertyName()
,
getListenerMethodName()
Method Detail |
public Object getTarget()
EventHandler(Object, String, String, String)
public String getAction()
EventHandler(Object, String, String, String)
public String getEventPropertyName()
EventHandler(Object, String, String, String)
public String getListenerMethodName()
null
signifies that all methods in the
listener interface trigger the action.
EventHandler(Object, String, String, String)
public Object invoke(Object proxy, Method method, Object[] arguments)
EventHandler
.
invoke
in interface InvocationHandler
proxy
- the proxy objectmethod
- the method in the listener interfacearguments
- an array of objects containing the values of the
arguments passed in the method invocation on the proxy instance,
or null
if interface method takes no arguments.
Arguments of primitive types are wrapped in instances of the
appropriate primitive wrapper class, such as
java.lang.Integer
or java.lang.Boolean
.
EventHandler
public static Object create(Class listenerInterface, Object target, String action)
listenerInterface
in which
all of the methods in the listener interface apply
the handler's action
to the target
. This
method is implemented by calling the other, more general,
implementation of the create
method with both
the eventPropertyName
and the listenerMethodName
taking the value null
.
To create an ActionListener
that shows a
JDialog
with dialog.show()
,
one can write:
EventHandler.create(ActionListener.class, dialog, "show")
listenerInterface
- the listener interface to create a proxy fortarget
- the object that will perform the actionaction
- the name of a writable property or method on the target
listenerInterface
create(Class, Object, String, String)
public static Object create(Class listenerInterface, Object target, String action, String eventPropertyName)
listenerInterface
in which
all of the methods pass the value of the event
expression, eventPropertyName
, to the final method in the
statement, action
, which is applied to the target
.
This method is implemented by calling the
more general, implementation of the create
method with
the listenerMethodName
taking the value null
.
To create an ActionListener
that sets the
the text of a JLabel
to the text value of
the JTextField
source of the incoming event,
you can use the following code:
This is equivalent to the following code:EventHandler.create(ActionListener.class, label, "text", "source.text");
//Equivalent code using an inner class instead of EventHandler. label.setText((JTextField(event.getSource())).getText())
listenerInterface
- the listener interface to create a proxy fortarget
- the object that will perform the actionaction
- the name of a writable property or method on the targeteventPropertyName
- the (possibly qualified) name of a readable property of the incoming event
listenerInterface
create(Class, Object, String, String, String)
public static Object create(Class listenerInterface, Object target, String action, String eventPropertyName, String listenerMethodName)
listenerInterface
in which
the method named listenerMethodName
passes the value of the event expression, eventPropertyName
,
to the final method in the statement, action
, which
is applied to the target
. All of the other listener
methods do nothing.
If the eventPropertyName
is null
the
implementation calls a method with the name specified
in action
that takes an EventObject
or a no-argument method with the same name if a method
accepting an EventObject
is not defined.
If the listenerMethodName
is null
all methods in the interface trigger the action
to be
executed on the target
.
For example, to create a MouseListener
that sets the target
object's origin
property to the incoming MouseEvent
's
location (that's the value of mouseEvent.getPoint()
) each
time a mouse button is pressed, one would write:
This is comparable to writing aEventHandler.create(MouseListener.class, "mousePressed", target, "origin", "point");
MouseListener
in which all
of the methods except mousePressed
are no-ops:
//Equivalent code using an inner class instead of EventHandler. new MouseAdapter() { public void mousePressed(MouseEvent e) { target.setOrigin(e.getPoint()); } }
listenerInterface
- the listener interface to create a proxy fortarget
- the object that will perform the actionaction
- the name of a writable property or method on the targeteventPropertyName
- the (possibly qualified) name of a readable property of the incoming eventlistenerMethodName
- the name of the method in the listener interface that should trigger the action
listenerInterface
EventHandler