我目前在NSToolbar
(Mac OS X)中有三個按鈕。每個按鈕都會觸發不同的NSPopover
以相對於發送操作的按鈕顯示。該部分正常工作。其中兩個彈出使用NSPopoverBehaviorTransient
,一個使用NSPopoverBehaviorSemitransient
(因爲我特別希望在切換應用程序或移動窗口時保持打開狀態)。NSPopover與NSPopoverBehaviorSemitransient在工具欄不關閉
當其中一個瞬態彈出窗口打開並且我單擊除彈出窗口本身以外的任何地方時,彈出窗口會正確關閉。除了切換應用程序和移動窗口外,Semitransient彈出窗口也是如此(除了切換應用程序和移動窗口),除了,如果我單擊另一個顯示另一個彈出窗口的工具欄按鈕。在這種情況下,現在兩個彈出在同一時間屏幕上可見。 (我懷疑這是一個錯誤。)
我已經試過調查,我可以啓動關閉自己,如果另一個工具欄按鈕被按下的方式。我想出的唯一選擇是跟蹤文檔級別當前打開的彈出窗口,並確保在打開另一個窗口之前手動關閉它。我寧願Semitransient popover能夠關閉自己。
有什麼我可以忽略的嗎?謝謝。