Flex控制弹出窗口拖动范围示例代码
使用TilteWindow形式的弹出窗口发现有时候一不小心将窗口拖动到上面就拖不回来了,导致弹出窗口无法关闭,下面有个解决方法
最近做项目的时候用到了TilteWindow形式的弹出窗口,发现有时候一不小心将窗口拖动到上面就拖不回来了,导致弹出窗口无法关闭,后来发现一个好的解决办法,在弹出窗口组件初始化的方法里面加上以下代码即可
this.addEventListener(TitleWindowBoundsEvent.WINDOW_MOVE,function(event:Event):void{
event.target.x = event.target.x < 0 ? 0 : event.target.x;
if(event.target.x + event.target.width > event.target.parent.width){
if(event.target.parent.width - event.target.width < 0){
event.target.x = 0;
}else{
event.target.x = event.target.parent.width - event.target.width;
}
}
event.target.y = event.target.y < 0 ? 0 : event.target.y;
if(event.target.y + event.target.height > event.target.parent.height ){
if(event.target.parent.height - event.target.height < 0){
event.target.y = 0;
}else{
event.target.y = event.target.parent.height - event.target.height;
}
}
});
复制代码 代码如下:
this.addEventListener(TitleWindowBoundsEvent.WINDOW_MOVE,function(event:Event):void{
event.target.x = event.target.x < 0 ? 0 : event.target.x;
if(event.target.x + event.target.width > event.target.parent.width){
if(event.target.parent.width - event.target.width < 0){
event.target.x = 0;
}else{
event.target.x = event.target.parent.width - event.target.width;
}
}
event.target.y = event.target.y < 0 ? 0 : event.target.y;
if(event.target.y + event.target.height > event.target.parent.height ){
if(event.target.parent.height - event.target.height < 0){
event.target.y = 0;
}else{
event.target.y = event.target.parent.height - event.target.height;
}
}
});
很赞哦!()
大图广告(830*140)