因此,我注意到Windows 7有一种令人不安的倾向,即阻止您将窗口标题栏拖离屏幕顶部。如果您尝试在这种情况下使用窗口底部可拖动区域的空气应用程序,并允许您将窗口顶部向上推过屏幕 - 它只会将窗口向下踢足够远以至于标题栏位于它所认为的“可见区域”的顶部。拖动时调整AIR应用程序窗口的大小
解决方法之一是在应用程序窗口移动时调整其大小,以便标题栏始终位于Windows需要的位置。但是,如何在拖动时调整窗口大小?你会这样做吗?
dragHitArea.addEventListener(MouseEvent.MOUSE_DOWN, function(e:MouseEvent):void{
stage.nativeWindow.height += 50;
stage.nativeWindow.startMove();
stage.nativeWindow.height -= 50;
});
看看那里发生了什么?当我点击时,我正在做startMove()
,它挂钩到OS的拖动窗口的功能。我也增加和减少了50个像素的窗口高度 - 这应该不会让我净增加,对吧?
错误 - 第一个'.height +=
'被执行,但.startMove()
之后的'.height -=
'从未运行。
为什么?
**更新** - 如果您好奇,我正在编程一个带有向上和向上扩展的飞出菜单的空气部件 - 并且由于这些部件只能在应用程序窗口本身的边界内显示即使该窗口设置为无镶边且透明的),我必须展开应用程序的边框以包含菜单“弹出”的区域。在极端的情况下,小部件位于左下角,菜单完全扩展到屏幕的右侧和顶部边缘,应用程序区域可以很好地覆盖整个桌面。 – 2010-04-06 07:14:15
问题是,当它像这样扩展时,如果用户将其向右拖动,它会导致应用程序窗口的“标题栏”区域移动到桌面区域的顶部边缘之上,它通常会在无法访问;并且一旦'.startMove()'操作完成,Windows就会自动将窗口重新定位到该边缘之下。 所以我想要做的是不断调整应用程序的高度,以便操作系统的利益,以便窗口的标题栏永远不会超出桌面区域的顶部边界。 – 2010-04-06 07:14:38
我想知道是否有人意识到正确的答案很可能是“你不行”,如果他们提交,他们会得到这个赏金? – 2010-04-12 18:14:56