永发信息网

as怎样制作messagebox模式对话框

答案:1  悬赏:10  手机版
解决时间 2021-01-23 02:40
  • 提问者网友:喧嚣尘世
  • 2021-01-22 04:54
as怎样制作messagebox模式对话框
最佳答案
  • 五星知识达人网友:白昼之月
  • 2019-06-01 02:47
用代码可以实现
this.mouseChildren = false;
var _elewin: AddElementWindows = new AddElementWindows(this,"OnAddWindowClosed",elementListData);
stage.addChild(_elewin);
_elewin.x = 150;
_elewin.y = 50;

public function OnAddWindowClosed(vData: Object): void{
stage.removeChild(vData.handle);
this.mouseChildren = true;

if(vData.modalResult == "IDOK"){
ISO_W = vData.isow;
ISO_H = vData.isoh;
ISO_OW = Math.sqrt(ISO_H*ISO_H*2);
}
}

package{
import flash.display.Sprite;
import flash.display.MovieClip;
import fl.data.DataProvider;
import fl.controls.List;
import flash.events.Event;
import fl.controls.Button;
import flash.utils.getDefinitionByName;
import flash.geom.Rectangle;
import flash.events.MouseEvent;
import flash.geom.Point;

public class AddElementWindows extends Sprite{
private var elementList: List;
private var selectElement: String;
private var showElement: Sprite;
private var btnOK: Button;
private var btnCancel: Button;

private var notify: Object;
private var signal: String;
private var currElement: Sprite;

private const WIN_W: uint = 600;
private const WIN_H: uint = 400;

public function AddElementWindows(vNotify: Object,vSignal: String,eleList: Array){
notify = vNotify;
signal = vSignal;

graphics.beginFill(0xffffff);
graphics.lineStyle(2,0x00ffff);
graphics.drawRect(0,0,WIN_W,WIN_H);
graphics.endFill();

elementList = new List();
elementList.dataProvider = new DataProvider(eleList);
elementList.addEventListener(Event.CHANGE,updateLists);
elementList.move(2,2);
elementList.setSize(100,350);
addChild(elementList);

showElement = new Sprite();
showElement.graphics.beginFill(0xffffff);
showElement.graphics.lineStyle(1,0x000000);
showElement.graphics.drawRect(0,0,495,349);
showElement.graphics.endFill();
showElement.mouseEnabled = false;
var window:Rectangle = new Rectangle(0,0,500, 350);
showElement.scrollRect = window;
addChild(showElement);
showElement.x = 102;
showElement.y = 2;

btnOK = new Button();
btnOK.label = "OK";
btnOK.move(380,365);
addChild(btnOK);
btnOK.addEventListener(MouseEvent.CLICK,onOKPress);

btnCancel = new Button();
btnCancel.label = "Cancel";
btnCancel.move(490,365);
addChild(btnCancel);
btnCancel.addEventListener(MouseEvent.CLICK,onCancelPress);
}

private function updateLists(item:Object): void{
selectElement = elementList.selectedItem.label;
var element: Class ;
try{
element = getDefinitionByName(selectElement) as Class;
}catch(error: Error){return;}

if(currElement != null) {
currElement.removeEventListener(MouseEvent.MOUSE_DOWN,onEleDown);
currElement.removeEventListener(MouseEvent.MOUSE_UP,onEleUp);
showElement.removeChild(currElement);
}
currElement = Sprite(new element());
showElement.addChild(currElement);
currElement.x = showElement.width / 2;
currElement.y = showElement.height / 2;
currElement.addEventListener(MouseEvent.MOUSE_DOWN,onEleDown);
currElement.addEventListener(MouseEvent.MOUSE_UP,onEleUp);
}

private function onEleDown(evt: MouseEvent): void{
currElement.startDrag();
}

private function onEleUp(evt: MouseEvent): void{
currElement.stopDrag();
}

private function onOKPress(evt: MouseEvent): void{
currElement.removeEventListener(MouseEvent.MOUSE_DOWN,onEleDown);
currElement.removeEventListener(MouseEvent.MOUSE_UP,onEleUp);
var _data: Object = {};
_data.modalResult = "IDOK";
_data.handle = this;
_data.element = currElement;
_data.elementName = selectElement;
notify[signal](_data);
}

private function onCancelPress(evt: MouseEvent): void{
if(currElement != null){
currElement.removeEventListener(MouseEvent.MOUSE_DOWN,onEleDown);
currElement.removeEventListener(MouseEvent.MOUSE_UP,onEleUp);
}
var _data: Object = {};
_data.modalResult = "IDCANCEL";
_data.handle=this;
notify[signal](_data);
}
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯