在本实例中自定义组件和主程序的交互,要靠不同参数的事件实现的。不同自定义组件中的相同组件,他们的事件参数是相同的,这样,主程序就很难辨别。为了能实现不同自定义组件传递不同的时间参数,需要自定义的事件类。该类相当于自定义组件和主程序间的桥梁。本文中讲述了本实例中自定义的3个事件类。
最新体验区http://flex.itzcn.com/index.htm
1 视频控制器事件类
视频控制器事件类,该类继承与Event类,主要是在视频播放和控制器组件中,对视频播放状态和全屏的事件。该事件构造函数的参数,就是事件的参数。代码如下所示:
- package myEvents
- {
- import flash.events.Event;
- public class PlayerEvent extends Event
- {
- public function PlayerEvent(type:String)
- {
- super(type);
- }
- }
- }
2 视频调节器事件类
视频调节器事件类,是调节器中的事件。该类有4个公有属性,包括了亮度、对比度、饱和度和反转度,可以从外部访问。构造函数的参数为4个数字,分别赋予4个属性,然后发送参数为“ChangeSetting”的事件到事件流。代码如下所示:
- package myEvents
- {
- import flash.events.Event;
- public class SettingEvent extends Event
- {
- public var Bright:Number;
- public var Contrast:Number;
- public var Saturation:Number;
- public var Hue:Number;
- public function SettingEvent(bright:Number,contrast:Number,saturation:Number,hue:Number)
- {
- Bright=bright;
- Contrast=contrast;
- Saturation=saturation;
- Hue=hue;
- super("ChangeSetting");
- }
- }
- }
3 播放列表事件类
播放列表事件类,是播放列表中的事件。该类有1个公有属性,是一个Object类对象。构造函数的参数为Object类对象,赋予属性,然后发送参数为“ChangePlayList”的事件到事件流。代码如下所示:
- package myEvents
- {
- import flash.events.Event;
- public class PlayListEvent extends Event
- {
- public var video:Object;
- function PlayListEvent(_video:Object):void
- {
- video=_video;
- super("ChangePlayList");
- }
- }
- }