2011-12-08 10 views
0

NSTextFieldがフォーカスを失ったときにトリガされたメソッドがあります。このメソッドは、現在のウィンドウ上にポップアップシートを表示します。フォーカスを失い、私のウィンドウの閉じるボタンをクリックしますか?

私はテキストフィールドに何かを入力した後、閉じるボタンをクリックしてウィンドウを閉じます。この場合:

  • テキストフィールドがフォーカスを失うと方法がトリガーと、それは私がクリックしたので窓が、とにかく却下され

しかし

  • ポップアップが表示されます閉じるボタンをクリックすると、ポップアップが数秒間だけ表示されます。

おかげ

答えて

1

あなたはNSWindowDelegateを作成し、ポップアップが表示されているか、テキストフィールドには、以前の最初の応答者(またはしかし、他だった場合は、テキストフィールドが失われたと判断している場合NOを返すように-windowShouldClose:を実装する必要がありますフォーカス)。

+0

私のウィンドウにポップアップが表示されているかどうかを知るにはどうすればよいですか?私のクラスのiVarsにNSAlertを追加する必要がありますか? – aneuryzm

+0

テキストフィールドにフォーカスが失われたかどうかはどのように判断していますか?おそらくそのメソッドにフラグを設定して、それをNSAlertハンドラで設定解除する必要があります。 –