我目前在NSToolbar
(Mac OS X)中有三个按钮。每个按钮都会触发不同的NSPopover
以相对于发送操作的按钮显示。该部分正常工作。其中两个弹出使用NSPopoverBehaviorTransient
,一个使用NSPopoverBehaviorSemitransient
(因为我特别希望在切换应用程序或移动窗口时保持打开状态)。NSPopover与NSPopoverBehaviorSemitransient在工具栏不关闭
当其中一个瞬态弹出窗口打开并且我单击除弹出窗口本身以外的任何地方时,弹出窗口会正确关闭。除了切换应用程序和移动窗口外,Semitransient弹出窗口也是如此(除了切换应用程序和移动窗口),除了,如果我单击另一个显示另一个弹出窗口的工具栏按钮。在这种情况下,现在两个弹出在同一时间屏幕上可见。 (我怀疑这是一个错误。)
我已经试过调查,我可以启动关闭自己,如果另一个工具栏按钮被按下的方式。我想出的唯一选择是跟踪文档级别当前打开的弹出窗口,并确保在打开另一个窗口之前手动关闭它。我宁愿Semitransient popover能够关闭自己。
有什么我可以忽略的吗?谢谢。