問題タブ [nsmenu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1866 参照

cocoa - Windows の同期 TrackPopupMenu に対応する Cocoa の手法はありますか?

rightMouse イベントに応答して、コンテキスト メニューを表示し、それを実行して、選択されたメニュー項目に応答する関数を呼び出したいと考えています。Windows では、TPM_RETURNCMD フラグを指定して TrackPopupMenu を使用できます。

これをCocoaで実装する最も簡単な方法は何ですか? NSMenu:popUpContextMenu は、指定された NSView にイベントを投稿したいようです。ダミー ビューを作成し、イベントを待ってから戻る必要がありますか? もしそうなら、メインに戻っていない場合、どうすればイベントを「待機」またはフラッシュできますか?

0 投票する
2 に答える
5032 参照

objective-c - Cocoa のメイン メニューを変更するにはどうすればよいですか?

それぞれ異なるメインメニューを表示する必要がある2種類のウィンドウを持つココアアプリがあります。

私の MainMenu.xib には、デフォルトの MainMenu があります。Window1.xib には Window1 があり、Window2.xib には Window2 があり、それが MainMenu です。

最初のウィンドウを開くとデフォルトのメニューが表示され、Window2 を開くとメニューが表示されます。

ただし、Window1 に戻すと、まだ Window2 のメニューが表示されます。表示されるメニューをキー ウィンドウに追従させるにはどうすればよいですか?

0 投票する
2 に答える
1122 参照

objective-c - ユーザーがメニュー項目を選択した後、NSPopUpButton を開いたままにするにはどうすればよいですか?

カスタム ビューを持つステータス アイテムの NSMenu を提供する NSPopUpButton があります。ポップアップ ボタンはリンクのリストを表示します。ユーザーがリストからリンクを選択すると、そのリンクがユーザーのブラウザー (バックグラウンド) に表示されます。

当然、ユーザーがリンクを選択するたびにメニューが閉じます。

これを変更したいと思います: ユーザーがさまざまなリンクをクリックしている間、メニューを開いたままにしておきたいのですが、それらはすべてバックグラウンドで開くことができます。ユーザーが別の場所をクリックすると、メニューが消えます。

これはどのように達成できますか?NSMenuItem をサブクラス化し、マウス クリックを何らかの方法でインターセプトする必要がありますか? ポップアップされたメニューに透明な NSView を重ねて、もう一度クリックを傍受しますか? 私はこれらの提案を気軽に行いますが、これらのいずれかを実装するのに問題があります...オーバーライドの正しいメソッドへのポインタをいただければ幸いです。

0 投票する
1 に答える
162 参照

cocoa - 強調表示された NSMenuItem を更新するとアプリがクラッシュする

ヘイホー!
のように小さなアプリを実行しLSUIElementていNSStatusItemます。
popupmenu のメニュー項目がコードによって更新されることがあります。しかし、更新されたNSMenuItem(またはそのスーパーメニュー) が「強調表示」されると、アプリは何もログに記録せずにクラッシュします。

何か考えはありますか?回答ありがとうございます。

0 投票する
2 に答える
1614 参照

cocoa - 動的アクションを含む NSMenu を使用する方法

ファイルを送信できる接続されたデバイスを一覧表示する Windows エクスプローラーにある [送信先] オプションと同様のオプションを使用して NSMenu を作成したいと考えています。

私の調査から、関数にパラメーターを送信するセレクターを定義することもできないように思われるため、@selector(@"sendToVolume:1"). では、アイテムの数が不明な場合に、どのアイテムがクリックされたかに基づいて、メニューに別のタスクを実行させるにはどうすればよいでしょうか?

0 投票する
5 に答える
4589 参照

objective-c - NSToolbarItem にポップアップ メニューを追加する方法は?

NSToolbarItem からポップアップ メニューを開こうとしています。この例に従ってみましたが、NSToolbar と NSToolbarItem は NSView ではなく NSObject から継承されるため、そのクラス メソッドを使用できません。

カスタム ビューを作成する以外に、NSToolbarItem からポップアップ メニューを開く最良の方法は何ですか?

0 投票する
1 に答える
339 参照

cocoa - 列挙されたプロパティをバインドする最もクリーンな方法は何ですか?

列挙型の各値の項目を持つメニューがあります。

メニュー:

列挙型:

プロパティ:

これを配線する最もクリーンな方法は何ですか? 私には 2 つのアイデアがありますが、どちらも不十分だと思います。

1 番目のアイデア: 各値 ( など) のプロパティを作成しますsortMethodIsDueDatesetSortMethodIsDueDate:これらのプロパティは呼び出しsetTaskSortMethod:て呼び出しますvalueDidChange:@"sortMethodIsDueDate"。その後、メニュー項目はこれらのプロパティにバインドされます。これは大変な作業のようです。

2 番目のアイデア: 各メニュー項目を に接続してから、メニュー項目-(IBAction)updateSortMethod:(id)senderを繰り返し、 に応じて値を設定しますsender。このアプローチはtaskSortMethod、コードの別のセクションによって が変更されるまでは問題ありません。変更された時点で、メニューを と同期させるためにコードを追加する必要がありますtaskSortMethod

VとCの分離が優れているため、最初のアプローチに傾いています。

より良いアイデアはありますか?

0 投票する
1 に答える
455 参照

objective-c - アクションをキーボードショートカットに関連付ける方法は?

パネルを呼び出すIBActionがあります。キーボードショートカットを使用してそのアクションを呼び出したいのですが、その方法がわかりません。

メニュー項目を作成し、アクションを項目に関連付けてから、その項目にショートカットを割り当てるのが1つの方法だと思いますが、まだメニューを作成していません。

何かアイデアや提案はありますか?

0 投票する
1 に答える
2648 参照

nsview - カスタム ビューを使用したカスタム NSStatusItem - NSWindow、NSView、カスタム NSMenuItem を使用しますか?

Spotlight、CoverSutra、およびそのタイプの他のアプリのように動作する LSUIElement アプリを作成しようとしています。NSWindow をポップアップするカスタム NSStatusItem を作成できましたが、問題は、現在フォーカスがあるアプリがカスタム NSWindow にフォーカスすることです。

私は Matt Gemmell の例 ( http://mattgemmell.com/2008/03/04/using-maattachedwindow-with-an-nsstatusitem )に基づいています。

たとえば、Safari で Spotlight アイコンをクリックすると、現在の Safari ウィンドウはグレー表示されず、フォーカスされたままになります。Spotlight で ESC を押すと、フォーカスが Safari ウィンドウに戻ります。

カスタム NSWindow でこれを行うことができませんでした。ウィンドウにフォーカスを戻すには、ウィンドウをクリックして戻す必要があります。

だから私はこれを達成するためにどのルートに行くべきか知りたいです。ソリューションは、カスタム NSMenuItem を持つ NSWindow、NSPanel、NSMenu ですか?