User Guide
DateField.scroll 457
The first usage example uses a dispatcher/listener event model. A component instance
(
dateFieldInstance) dispatches an event (in this case, scroll) and the event is handled by
a function, also called a handler, on a listener object (
listenerObject) that you create. You
define a method with the same name as the event on the listener object; the method is called
when the event is triggered. When the event is triggered, it automatically passes an event
object (
eventObject) to the listener object method. Each event object has properties that
contain information about the event. You can use these properties to write code that handles
the event. The scroll event’s event object has an additional property,
detail, that can have
one of the following values:
nextMonth, previousMonth, nextYear, previousYear.
Finally, you call the
EventDispatcher.addEventListener() method on the component
instance that broadcasts the event to register the listener with the instance. When the instance
dispatches the event, the listener is called.
For more information, see “EventDispatcher class” on page 499.
The second usage example uses an
on() handler and must be attached directly to a DateField
instance. The keyword
this, used inside an on() handler attached to a component, refers to
the component instance. For example, the following code, attached to the date field
my_df,
sends “_level0.my_df” to the Output panel:
on (scroll) {
trace(this);
}
Example
The following example, written on a frame of the timeline, sends a message to the Output
panel when a user clicks a month button on a DateField instance called
my_df. The first line
of code creates a listener object called
dfListener. The second line defines a function for the
scroll event on the listener object. Inside the function is a trace() statement that uses the
event object that is automatically passed to the function, in this example
evt_obj, to generate
a message. The
target property of an event object is the component that generated the
event—in this example,
my_df The last line calls EventDispatcher.addEventListener()
from
my_df and passes it the scroll event and the dfListener listener object as parameters.
// Create listener object.
var dfListener:Object = new Object();
dfListener.scroll = function(evt_obj:Object) {
trace(evt_obj.detail);
};
// Add listener object to DateField.
my_df.addEventListener("scroll", dfListener);