4
我有一個對話窗口,可以通過自定義的取消按鈕或使用系統紅色窗口按鈕取消。當對話框被取消時,我需要執行一些簡單的邏輯。如何檢測用戶是否按下了紅色按鈕?如何使用紅色窗口按鈕檢測到我的窗口正在關閉?
我知道我可以使用-windowWillClose:
委託回調來檢測正在關閉的窗口。但是,當我在對話成功後以編程方式關閉窗口時,也會調用此回調。我也知道我可以簡單地設置一個BOOL
標誌,但有沒有更好的解決方案?如果我能檢測到紅色按鈕激活,那將是最好的。
同時具有取消按鈕和關閉按鈕是不正確的用戶界面(至少,不在Mac上)。在對話框中,按鈕存在,所以它們就足夠了。在這種情況下,窗口框架中應該沒有啓用紅色按鈕;在可可中,這是通過設置窗口的遮罩來實現的。 –