問題タブ [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 に答える
493 参照

cocoa - NSMenuでのカスタム/任意のコントロールの表示

NSMenu内にNSTextFieldまたはNSProgressIndicatorを表示するにはどうすればよいですか?Spotlightアイコンメニュー、またはほとんどのアプリケーションのヘルプメニューに似た何かをしたいと思っています。

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

objective-c - NSMenu が開いている間にキー押下イベントをキャプチャする

a が開いている間にキーの押下をキャプチャすることに興味がNSMenuあります。たとえば、メニューが開いているときにユーザーがキーボードの「e」または「1」を押した場合、特定のメッセージを送信します (できれば、押されたキーへの参照を含むイベント オブジェクトを渡します)。

代替メニューを調べましたが、オプション キーをキャプチャするためにしか使用できないという印象を受けました。

現在、私はカスタムビューを使用しておらず、NSStatusBar(メニューが生成される場所) とNSMenu.

私は Objective-C を初めて使用するので、言葉遣いが間違っていたら申し訳ありません。

助けてくれて本当にありがとう!

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

cocoa - どの NSTableView がコンテキスト メニューを開いたかを知る方法は?

同じコンテキスト メニューを持つ 5 つの NSTableView のインスタンスがあります。メニューがクリックされたというメッセージが表示されたら、それを送信したテーブルを知る必要があります。NSMenu のドキュメントを確認しましたが、メニューを開いたテーブルを確認する方法が見つからないようです..

NSTableView をサブクラス化し、me​​nuForEvent でデリゲートにメッセージを送信することを考えていますが、それが最善の方法でしょうか?

アップデート:

ありがとう Joshua、私は 5 つのテーブルを使用して週 5 日のタスク プランを表示しています。各テーブルは曜日を表し、タスクを追加および削除するためのコンテキスト メニューを追加しました。したがって、ユーザーが平日に「タスクを追加」をクリックすると、どのタスクかを知る必要があります。テーブルビューをサブクラス化し、メニューが開いたときにデリゲートにメッセージを送信することで機能しました。このようにして、コントローラーは、どのテーブルが最後にメニューを呼び出したかを認識します。しかし、これを実現するのに最適な実装とは思えません。問題は UI にあるとおっしゃっていたようですが、どう思いますか? ホセ。

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

cocoa - ステータスバーアイテムのNSMenuをリバースエンジニアリングする

TapbotのPastebotSyncアプリケーションに見られるようなステータスバーアイテムのメニューを作成したいと思います。

メニューの上部と同じ高さのカスタム領域を実現する方法を知っている人はいますか?

私はそれを行うためのいくつかの潜在的な方法を試しました/考えました:

  • ビューのある標準のNSMenuItem-メニューの上部と同じ高さではありません
  • メニュー上部の領域にNSWindowを配置するためのハックっぽいコード-メニューを閉じたときにメニューがうまくフェードアウトしないため、あまり良くありません
  • NSMenuを完全に放棄し、代わりにNSViewを使用する-これはまだ試していませんが、偽のボタンやNSMenuItemsとして機能するものを作成する必要はありません。

誰かより良いアイデアや提案がありますか?

ありがとう!

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

cocoa - Cocoa validateUserInterfaceItem とメニュー項目の非表示

validateUserInterfaceItem を使用すると、メニュー項目を無効/有効にすることができますが、メニュー項目を非表示にするには同様の動作が必要です。ヒントはありますか?

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

macos - 「File Menu」という名前のデフォルトの NSMenu を使用して、選択したファイルのパスを取得するにはどうすればよいですか?

ユーザーがファイルメニューを使用して、「ファイルメニュー」の「開く...」選択でファイルを選択できるようにし、ユーザーが選択したファイルのパスを取得できるようにしたいと思います。

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

objective-c - NSMenuItem カスタム ビューの上のギャップ

setView:メソッドを使用してNSMenuItem、カスタム ビューを設定しています。このカスタム ビューには、ビュー全体を占める画像があります。このNSMenuItemカスタム ビューはメニューの最初にありますが、問題は、メニューの上部と同じ高さに収まらないことです。次の図に示すように、大きなギャップがあります。

代替テキスト

なぜこれが起こっているのですか、どうすればそれを止めることができますか?


編集

私は今このコードを使用していますが、私はEXC_BAD_ACCESS行に乗っていますInstallControlEventHandler

また、metrics.top = 0これは上部のギャップを削除する必要がある行であることに注意してください。しかし、私はそれをそこまで機能させることはできません。なぜ私がEXC_BAD_ACCESSそこにいるのか知っている人はいますか. 私はすでに作成して割り当てstatusMenuているので、確実に機能するはずですか?

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

objective-c - NSMenuItemsの消失に関する問題

特定のビューがロードされたときに一部のメニューを無効にする必要があるため、InterfaceBuilderでアプリのメインメニューの「メニュー項目を自動有効にする」を無効にしました。しかし、私は問題にぶつかっています。アプリケーションが別のアプリケーション(Safariなど)と通信するたびに、すべてのメニューが無効になり、アプリケーションを強制終了して再起動する必要があります。これを引き起こす原因は何ですか?

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

objective-c - NSMenuの前のNSWindow

NSWindowの前に表示してNSMenu、後ろに隠れないようにすることはできますか?

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

objective-c - NSMenu が開いているかどうかを判断する

ユーザーがステータスバーの NSStatusItem をクリックすると開く NSMenu があります。NSMenu が開いている (展開されている) かどうかを確認するにはどうすればよいですか?

ありがとうございました!