5

私の電子書籍の 1 つで、新しいメニュー項目を追加する方法が説明されています。まあ、それを理解するのはそれほど難しいことではありません。IBAction を新しいメニュー項目にリンクする方法を理解することも難しくありません。しかし、この本と Google の検索結果には、メニュー項目を無効にする方法が説明されていません。具体的には、ウィンドウが現在表示されている場所に応じて、設定を無効にして終了したいと考えています。アプリケーションが現在設定ウィンドウを表示している場合、これらのメニュー項目を無効にしたいと考えています。

ここに画像の説明を入力

私がPreferencesMenuという名前の IBOutlet を持っているとします。

[preferencesMenu setEnabled:NO];

、問題のメニュー項目を無効にしません。では、特定のメニュー項目を無効にするにはどうすればよいでしょうか?

アドバイスありがとうございます。

トム

4

2 に答える 2

8

NSMenuItemsは、ターゲットとセレクターの両方nilがそれぞれ と である場合にのみ、自動的に無効になりNULLます。

[preferencesMenu setTarget:nil];
[preferencesMenu setAction:NULL];

簡単なテストで明らかになるのは、次のことです。

ここに画像の説明を入力

于 2013-01-18T02:58:16.603 に答える
1

ターゲットをゼロに設定するだけです。私がやります。

[preferencesMenu setTarget:nil];
于 2013-01-18T01:12:33.660 に答える