問題タブ [nspopupbutton]

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 に答える
355 参照

nsarray - NSPopupButton は、1 つを除くすべての項目を削除します

) NSPopupButton では、さまざまなアイテムを保存する必要があります。これらは、他のアクションに応じて変更されることがよくあります。

私の意図は、古いアイテムを削除してから新しいアイテムを追加することです。インデックス0のアイテムを維持しながらこれを行うことは可能ですか? ...それはいいだろう!

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

ios - XcodeがNSPopUpButtonをクラスとして認識しない

NSPopUpButton を実装しようとしていますが、Xcode が認識しません。NSPopUpButton と入力した後、Xcode はコード補完を提供せず、「宣言されていない識別子の使用」という問題を報告します。私が追加しなければならない特定のフレームワークはありますか?申し訳ありませんが、おそらく簡単な修正があることを知っています...

ありがとう

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

objective-c - NSMenu プログラムで項目を選択

アプリケーション用のプラグイン - カスタム キーボード ショートカットを作成しています。そのビューをトラバースできます。ポップアップメニューを開いてその中の項目を選択し、そのサブメニューを開いてサブメニューの項目を選択する必要があります。

performClick:今のところ、関連するNSPopUpButton要素に送信することによってのみ、トップのポップアップ メニューを開くことができます。

プログラムでメニュー内の項目を選択し、そのサブメニューを開くにはどうすればよいですか?

私はもう試した:

  • (および関連するselectItem:)を呼び出します。運が悪く、ドキュメントに「メニューがユーザー入力を追跡している間、メニューの項目の追加、削除、変更などのメニューへのプログラムによる変更は反映されないことに注意してください」NSPopUpButtonNSMenu
  • キーボードイベントを送信します(この回答を使用)。運が悪い-それらのイベントを送信する瞬間にいくつかのキーを保持している可能性があります
  • アクセシビリティ API を介してそれを行う方法に関する情報を見つけることができますが、現在のアプリケーション (または他のアプリケーションでも、Objective-C を使用) で使用する方法については何も見つかりません。
0 投票する
1 に答える
736 参照

menuitem - 選択した submenuItem を NSPopUpButton に表示します

NSPopUpButton をメニューとサブメニューで埋めました。

ルート メニューで menuItem を選択すると (つまり、sub-menuItem ではありません)、選択した menuItem が適切に表示されます。popUp ボタンをもう一度クリックすると、選択した menuItem がマウスの下に表示されます。

しかし、sub-menuItem を選択しても表示されません。popUp ボタンをもう一度クリックしても、マウスの下に表示されません。ボタンをクリックするたびに、メニュー階層に飛び込んで選択された項目を探す必要があります。

解決策はありますか?

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

cocoa - 複数の NSArrayControllers が同じアレイを制御できますか?

複数の NSPopUpButton を同じモデル オブジェクトと同期させたいと考えています。バインディングに慣れてきたばかりで、次のスキームを実装しました。

コントローラー

これはひどい考えですか?

ここでは、各 NSPopUpButton に独自の NSArrayController があります。各 NSArrayController は、モデル レイヤー内の同じNSMutableArray データ ソースからコンテンツを取得します。

モデル配列 (上記の例では動物の配列) にオブジェクトを追加および削除するときにいくつかの奇妙な問題に気付き、このアプローチがどれほど実行可能であるか、または複数のビューを同じモデルと同期させるためのより良い方法があるかどうか疑問に思っていました?

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

macos - NSMutableArray を NSPopUpButton にバインドし、新しい値を挿入する

(このサンプル プロジェクトはこちらhttps://github.com/danieljfarrell/BindingToPopUpButtons )

私はちょうどバインドに入っていますが、AppDelegate (モデル) でコンテンツ配列を管理している NSArrayController にバインドされた NSPopUpButton があり、すべてうまく機能しています! ただし、メソッドのコンテンツ配列に追加された静的オブジェクトに対してのみうまく機能します-init。コンテンツ配列を変更するときに問題が発生します (挿入、追加など...)。

-init で読み込まれた曲

問題。新しい曲を挿入してコンテンツ配列を-mutableArrayValueForKey:変更すると、NSPopUpButton は-description配列要素の値ではなく配列を表示し、配列が重複しているように見えますか? モデルが単なる NSMutableDictionary であるこの単純なケースでは、KVO 準拠の方法でコンテンツ配列を適切に変更するにはどうすればよいですか?

データ ソースの変更

NSPopUpButton のバインディングは標準です。

  • コンテンツ

    • バインド先:配列コントローラー
    • コントローラーキー: arrangedObjects
  • コンテンツ値

    • バインド先:配列コントローラー
    • コントローラーキー: arrangedObjects
    • モデル キー パス:タイトル (arrangedObjects 配列に含まれる NSDictionary アイテムのキー)。
0 投票する
2 に答える
175 参照

cocoa - NSPopupButton メニューの事前レンダリング?

私は NSPopuButton を持っていますが、最初に開くと、多くのものを描画するため遅くなります。2回目以降は毎回とても速いです。

メニューが事前にレンダリングされるようにするにはどうすればよいですか?

これまで、applicationWillLaunch でメニューを作成してみました。作成後、popupMenuPositioningItem:atLocation:inView: を呼び出します。

これは問題なく動作しますが、問題は画面にメニューが表示されることです。オフスクリーン ウィンドウとビューを作成し、そこでメニューを開こうとしましたが、常に画面内に描画されます。

メニューをプリレンダリングする方法、または表示する方法はありますか?

ありがとう。

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

objective-c - プルダウン タイプの NSPopUpButton で、メニュー項目をクリックすると、ポップアップのタイトルが変更されない

問題:

  1. NSPopupButtonタイプ Pull downのインスタンスを取ります。

  2. ポップアップにいくつかのメニュー項目を追加します。

  3. コードを実行します。

  4. ポップアップで任意のメニュー項目を選択します

    • ポップアップ ボタンのタイトルが変更されていません。
    • 選択したアイテムを通常の動作と同じポップアップのタイトルとして表示する必要がありますNSPopupButtonが、タイプ プルダウンを使用します。
    • また、タイトルと同じ名前のアイテムを追加する必要があります。

誰でもこれを達成するのを手伝ってもらえますか?