我认为这个问题有一个简单的解决方案,对我来说不够简单.
问题:如何限制Flex 3中的TitleWindow被拖出屏幕/舞台?有没有办法将TitleWindow限制在查看区域?
示例:假设我有一个占用100%屏幕的应用程序.接下来,我通过PopUpManager创建一个TitleWindow.然后我可以继续点击并按住(拖动)该窗口离开屏幕,然后释放鼠标按钮.那个窗口现在在某个地方丢失了.有没有办法防止窗户被拖到观察区域之外?
我在这里先向您的帮助表示感谢.
小智 8
这是一个非常古老的帖子,但这是另一种方法:无论是否扩展组件,在TitleWindow定义中添加以下行:move:"doMove(event)"导入应用程序库(导入mx.core) .Application;)并添加doMove函数:
private function doMove(event:Event):void
{//keeps TW inside layout
var appW:Number=Application.application.width;
var appH:Number=Application.application.height;
if(this.x+this.width>appW)
{
this.x=appW-this.width;
}
if(this.x<0)
{
this.x=0;
}
if(this.y+this.height>appH)
{
this.y=appH-this.height;
}
if(this.y<0)
{
this.y=0;
}
}
Run Code Online (Sandbox Code Playgroud)