还记得那个蛋疼的TitleWindow吗?如果你把它拖到容器里面去了,怎么都拖不下来.有时候可能要重启程序!!!
这里给出两点建议:1.如果是桌面应用程序,最好用NativeWindow,这些问题都没有了,而且拖动,缩放都有现成的api.
2.就是类似下面的办法重写TitleWindow,让它像QQ一样可以移动.而且还限制了移动了范围.
<?xml version="1.0" encoding="utf-8"?>
<s:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
width="400" height="300" mouseUp="mouseUpHandler(event)"
mouseDown="mouseDownHandler(event)">
<fx:Script>
<![CDATA[
import mx.core.FlexGlobals;
import mx.events.FlexEvent;
public var dragRect:Rectangle;
protected function mouseDownHandler(event:MouseEvent):void
{
if(!dragRect)
{
dragRect = new Rectangle(0,0,FlexGlobals.topLevelApplication.width - width,FlexGlobals.topLevelApplication.height - height);
}
this.startDrag(false,dragRect);
}
protected function mouseUpHandler(event:MouseEvent):void
{
this.stopDrag();
}
]]>
</fx:Script>
</s:TitleWindow>