我有一个在 Mac 上运行的 AIR 应用程序,并且我希望在有人“关闭”应用程序(例如点击红色“x”按钮或 cmd-w)时隐藏窗口。但是,如果有人点击 cmd-q 或从扩展坞上下文菜单或顶级菜单中选择“退出”,我希望应用程序真正关闭。
我可以阻止应用程序发送的“关闭”事件的默认值,但是,这会导致所有“关闭”方法仅隐藏窗口。此时关闭应用程序的唯一方法是 ForceQuit(或通过我提供的单独界面,例如停靠图标上的上下文菜单选项)。
我还尝试手动捕获 cmd-q keyDown 事件,但它没有被发送。此外,当人们尝试使用菜单选项退出应用程序时,这也无济于事。
此外,如果我在关闭方法上阻止默认,它会导致我的应用程序立即取消关闭过程(这是一种糟糕的用户体验)。
有没有办法检测关闭 AIR 应用程序的不同方法?我希望能够区分这些关闭方法之间的区别并做出适当的反应。
尝试这个作为结束,据我了解,框架中存在/是一个错误,因此,如果您包含 AIR 更新程序,它会破坏 cmd-q 支持,该线程曾经位于此处:
这可能适用也可能不适用于您的情况。
NativeApplication.nativeApplication.addEventListener(Event.EXITING,
function(e:Event):void {
var opened:Array = NativeApplication.nativeApplication.openedWindows;
for (var i:int = 0; i < opened.length; i ++) {
opened[i].close();
}
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)