2011-12-08 199 views
0

我有一個方法在NSTextField失去焦點時觸發。此方法在當前窗口上顯示一個彈出窗體。失去焦點並點擊窗口的關閉按鈕?

除了當我在文本字段中輸入某些內容並且通過單擊關閉按鈕關閉窗口時,一切都很好。在這種情況下:

  • 文本字段失去焦點,並且該方法被觸發,它顯示彈出

  • 窗口被解僱無論如何,因爲我點擊關閉按鈕,所以彈出窗口只能看到幾秒鐘。

感謝

回答

1

您應該創建一個NSWindowDelegate和實施-windowShouldClose:回到NO如果彈出菜單可見或文本字段是以前的第一個響應者(或其他但是你確定文本字段丟失焦點)。

+0

我如何知道彈出窗口在我的窗口中可見?我應該將NSAlert添加到我班的iVars嗎? – aneuryzm

+0

你如何確定文本字段失去焦點?您應該可以在該方法中設置標誌,然後在NSAlert處理程序中取消設置它。 –