2012-06-05 99 views
0

我需要實現自定義彈窗窗口(不能使用NSPopover)。它的所有工作都很好,但我還需要實現當用戶在父窗口中單擊某處時popover自動關閉。NSWindow父窗口上的子窗口關閉

什麼是最好的方式來實現這一點,沒有繼承父窗口,這怎麼能實現呢?

回答

0

製作彈出窗口時顯示它,並使用NSWindowDidResignKeyNotification(或委託方法)關閉它的狀態(當用戶使其他窗口處於活動狀態時發生)時關閉。每當父窗口關閉時關閉也是一個好主意(NSWindowWillCloseNotification)。

+0

'NSWindowDidResignMainNotification'將不起作用,因爲如果單擊父項,窗口將不會退出main。 –

+0

@ErikAigner對不起,這是關鍵,不是主要。這就是我的popover做到的。我已經更新了答案。 – hamstergene

+0

還與主要試了一下(想你可能意味着鍵代替),但沒有工作:( –