問題タブ [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 投票する
1 に答える
770 参照

cocoa - NSMenuItemのタイトルをメニューの幅に楕円化する

NSMenuItemのタイトルをプログラムで変更したいのですが、この変更によってメニューの幅が大きくならないように、楕円サイズにします。これどうやってするの?

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

cocoa - NSMenuItem番号バブル?

私はこのようなものを見ました:

丸められた数値フィールド

メニュー項目の右側にあるメニューレットにあり、その方法がわかりません。

誰でも詳しく説明できますか?ありがとうございました!

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

cocoa - popUpContextMenuの最初の項目を選択する

私は非常にキーボードを多用するアプリケーションに取り組んでいます。キーボードの両手。マウスに手を入れないでください。

ユーザーは、キーボードを介してコンテキストメニューをポップアップし、項目を選択して、最後にEnterキーを押すことができます。

[NSMenu popUpContextMenu]アイテムを強調表示せずにメニューを表示します。ユーザーは、最初の項目を強調表示するために、arrow_downを1回押す必要があります。

私の友人は、このメニューを使用するたびにarrow_downを押す必要があることに気づき、この手順を削除して、メニューがポップアップしたときに最初の項目が常に強調表示されるようにすることを提案しました。

カーボンハックが必要だと思いますか?

プログラムで最初の項目を強調表示するにはどうすればよいですか?


このコードを使用してメニューをポップアップします。


更新:popUpContextMenuの直後にアプリにarrow_downイベントを送信しようとしましたが、メニューが表示されているときにイベントが実行されません。(イベントはメニューがなくなった後に実行されます)。

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

cocoa - キーを押すたびにすべてのメニューの更新を要求するポップアップメニュー

プログラムでポップアップメニューを作成し、デリゲートメソッドmenuNeedsUpdate:(NSMenu *)メニューで更新してから、popUpMenuPositioningItem:nil atLocation:mouseLoc inView:nilメソッドを使用して表示しています。

マウスコントロールに関する限り、これは正常に機能します。ただし、キーボード(文字または矢印キー)を使用すると、menuNeedsUpdate:がすべて、ルートメニューとサブメニューに対して呼び出されることに気付きました。これは非常に非効率的であり、キーボードを介したメニューの使用が遅くなります。

なぜこうなった?それを回避または停止する方法はありますか?

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

cocoa - NSMenuItem に再描画を強制する方法は?

NSSearchField を使用したカスタム ビューを持つカスタム ステータス バー メニューを実装しています。検索結果に応じてメニュー項目の数を更新しています。メニュー項目の数は、NSSearchField のユーザー タイプとして変更されます。結果の数が同じままである場合、アイテムのタイトルが更新 (再描画) されないことに気付きました。それらを強制的に再描画するにはどうすればよいですか?

この関数では、メニューを再構築します。最初にすべてのアイテムを削除し、検索結果に従って新しいアイテムを作成します。

ありがとう、

ナバ

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

cocoa - NSMenuを遅らせてNSButtonを作成するにはどうすればよいですか?

ココアでは、メニューが遅れたnsbuttonを作成したいと思います。つまり、クリックするとアクションメソッドが呼び出され、2秒間押された状態が続くと、nsmenuが表示されます。

これは、Xcodeツールバーにある[BuildActiveTarget]ボタンに似ています。

よろしく、

ダナラジ。

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

cocoa - 複数のNSMenu間でNSMenuItemを共有する

同じアプリケーションに複数のメニューがあり、それらの間でサブメニューを共有したいと思います。

簡単にするために、1つがメインメニューで、もう1つがドックタイルメニューであるとします。

かなりの数の項目(たとえばフォント名)を含むサブメニューがありますが、その多くはさまざまな理由でiboutletの参照を保持する必要があります。

IBでは、これらのサブメニューを「共有」する方法が見つからないため、IB定義を複製して(つまり、2つの異なる場所で各アイテムを手動で再作成して)、1つだけではなく2つのnsmenuitemsへの参照を保持することになります。 、など。それはいいことではありません。

複数のNSMenu間でサブメニュー定義を共有する方法はありますか?

IBでトップレベルのメニュー項目を作成しようとしましたが、メニュー定義の何にもリンクできないようです。さらに、これをプログラムで実行できたとしても、バインディング、レスポンダー階層、メモリ管理などが混乱する可能性があるのではないかと心配しています。

これを行うためのベストプラクティスはありますか?誰かがそれをしましたか?そして結果はどうでしたか?

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

cocoa - NSMenuにフォーカスを設定する方法(キーイベントを取得するようにする)?

NSSearchFieldとメニュー項目を含むステータスメニューがあります。検索フィールドがアクティブで、ユーザーが上下の矢印を押したときに、メニュートラッキングを開始します。つまり、ユーザーはメニュー項目間で矢印キーを使用して移動できます。moveUpセレクターとmoveDownセレクターをキャッチできます。メニューをキーレスポンダーにするにはどうすればよいですか?

ありがとう、

ナバ

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

objective-c - 2 つの NSMenuItems の同期状態

私はNSMenus同じものを2つ持っていNSMenuItemsます。NSMenuItemその中の1 つだけNSMenuを選択する必要があります。(のようなものNSMatrix)。そこでNSMenuItem、それぞれを同じアクションに接続し、アイテムのインデックスにNSOnState. メソッド内で、古いインデックスを に、NSOffState新しいNSOnStateインデックスを に設定してから、古いインデックスを新しいインデックスに設定します。これは、2 つのうちの 1 つに問題なく機能しNSMenusます。しかし、両方を同期したいと思います。すべての NSMenu に IBOutlets を追加し、両方にアクセスできるため、メソッド内で状態を設定できますNSMenus。しかし、これはちょっと冗長に感じます..注:インデックスをユーザーのデフォルトに保存することも計画しているので、おそらくNSUserDefaultsController?によって達成できます。