package {
import flash" ōnclick="tagshow(event)">flash.events.Event;
public class OrderEvent extends Event{
public static const ORDER_DISHES:String="点菜"; //这里自定义了一个事件名称:ORDER_DISHES
public static const UNORDER_DISHES:String="退菜"; //问题1:如何添加多个事件名称呢?
private var _dishes:Array ; //用来存储客人点的菜名清单
public function OrderEvent (){
super(ORDER_DISHES); //将静态属性ORDER_DISHES作为事件的默认类型
}
//OrderEvent事件自定义的方法
public function set dishes(dishesAry:Array):void{
_dishes = dishesAry;
}
public function get dishes():Array{
return _dishes;
}
}
}
package {
import flash.events.EventDispatcher;
public class 客户 extends EventDispatcher {
public var name:String;
private var _orderDish:OrderEvent;
public function 客户(客户名:String) {
name = 客户名;
_orderDish = new OrderEvent();
}
public function 点菜(菜单:Array):void {
_orderDish.dishes = 菜单;
dispatchEvent(_orderDish); //发送出OrderEvent事件
}
public function 退菜(退菜单:String):void {
_orderDish.undishes = 退菜单;
dispatchEvent(_orderDish); //发送出OrderEvent事件
}
//问题2:在点菜()和退菜()里都有dispatchEvent(_orderDish); 只有注释掉一个后,另一个才起作用,为什么?
}
}
package {
import flash.display.Sprite;
public class 点菜测试 extends Sprite{
public function 点菜测试(){
var A客:客户 = new 客户("ybzjllj");//生成一个客人"ybzjllj"
var 小姐A:服务员 = new 服务员("A小姐");//生成一个服务员
//注册侦听器,将服务员的replyOrderFood()方法注册为监听“点菜”事件的侦听器
A客.addEventListener(OrderEvent.ORDER_DISHES,小姐A.服务1);
A客.addEventListener(OrderEvent.UNORDER_DISHES,小姐A.服务2);// 问题1:如何才能使这个事件UNORDER_DISHES有效?
//点菜,在order()中发出OrderEvent事件。
A客.点菜(["剁椒鱼头","农家小炒肉","神仙豆腐"]);
//A客.点菜(["青椒鱼","回锅肉","豆花鱼"]); //问题2:点菜两次,就会出错.
//退菜
//A客.退菜("农家小炒肉"); //问题2:点菜()里用dispatchEvent(_orderDish)发送了OrderEvent事件,这里再用就出错.
}
}
茶杯头甜蜜终章dlc 官方手机版v1.0.0.3
下载火柴人传说暗影格斗内置菜单 最新版v3.0.1
下载荒野乱斗测试服 安卓版v61.10.3
下载荒野乱斗彩虹服 安卓版v61.10.3
下载寒霜启示录 安卓版v1.25.10
寒霜启示录是一款生存模拟游戏,不少玩家可能对于末日都有着自己
末日城堡免广告版 安卓最新版v0.7.1
末日城堡免广告版是一款非常好玩的模拟经营类游戏,内部可以不看
甜蜜人生模拟器 最新版v1.4.5
甜蜜人生模拟器是一款非常好玩的模拟恋爱手游,玩家在这里能够对
武器锻造师内置功能菜单 v10.4
武器锻造师内置菜单版是游戏的破解版本,在该版本中为玩家提供了
开放空间overfield 安卓版v1.0.5
开放空间Overfield是一款箱庭养成经营手游,让你在广阔