好像Flex3也没有找到可以直接使用的(x,y)的方法来指定Alert窗口的显示位置。但是还是有办法解决这个问题的:
代码1:
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Script><![CDATA[ import mx.controls.Alert; import mx.managers.PopUpManager; private function showAlert():void{ var alert:Alert = Alert.show("Can you see me on random positions?"); PopUpManager.centerPopUp (alert); var newX:Number = 200; var newY:Number = 200; callLater (alert.move, [newX, newY]);
} ]]></mx:Script> <mx:Button label="Show Alert" click="showAlert()"/> </mx:Application> |
代码2:只更改showAlert()方法
private function showAlert():void{ var alert:Alert = Alert.show("Can you see me on random positions?"); PopUpManager.centerPopUp (alert); var newX:Number = 200; var newY:Number = 200; //alert.validateNow();
alert.move(newX,newY); //callLater (alert.move, [newX, newY]);
} |
代码3:添加即时验证:
private function showAlert():void{ var alert:Alert = Alert.show("Can you see me on random positions?"); PopUpManager.centerPopUp (alert); var newX:Number = 200; var newY:Number = 200; alert.validateNow(); alert.move(newX,newY); //callLater (alert.move, [newX, newY]);
} |