gpt4 book ai didi

macos - 拦截选项-关闭

转载 作者:行者123 更新时间:2023-12-03 16:41:35 30 4
gpt4 key购买 nike

通常,按下 option 键关闭窗口会关闭应用程序中的所有窗口。在我的应用程序中,我希望它仅关闭与用户正在关闭的窗口相关的窗口。我怎样才能做到这一点?我可以为所有窗口实现 windowShouldClose,但是我如何知道用户单击了哪个窗口?

最佳答案

您可以查看在正在处理的事件中是否按住了选项键:

([[NSApp currentEvent] modifierFlags] & NSAlternateKeyMask)!=0

如果这是响应用户单击窗口的关闭按钮,那么您可以像这样找到被单击的窗口:[[NSApp currentEvent] window]

我想你还应该检查 [NSApp currentEvent]是鼠标事件等,但似乎这种测试组合应该可以为您提供所需的信息。

<小时/>

另一方面,如果用户在按住选项键的情况下从"file"菜单中选择“关闭窗口”命令,则可以覆盖 performClose:方法来自NSWindow s 默认实现为您自己的,您可以在其中执行 currentEvent在调用 [super performClose: sender] 之前测试上述内容

关于macos - 拦截选项-关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18938105/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com