問題タブ [nstoolbar]
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.
cocoa - ウィンドウ下部のNSToolbar
ウィンドウの下部にNSToolbarを配置するにはどうすればよいですか。ウィンドウの上部にツールバーがあり、下部に移動する必要があるプログラムを変更する必要があります。
cocoa - Cocoa HUD ウィンドウ: 透明度を削除しますか?
標準の NSPanel を HUD スタイルに設定しています。背景色を変更したいのは、主にツールバーが必要であり、標準の nstoolbar を HUD で見栄えよくする方法も、ツールバーの背景を直接カスタマイズする方法も見当たらないためです。
私は、完全にカスタムのウィンドウを作成する方法がたくさんあることを認識しており、それらを他の状況で使用しています。この場合、ウィンドウが提供するすべての利点が必要ですが、透過性は必要ありません。興味深いことに、背景色は変更できますが、アルファは変更できません。アルファ値を設定しても、ウィンドウには影響しません。
以前にこの問題を解決した人はいますか?
objective-c - toolbarSelectableItemIdentifiers: は呼び出されません
選択可能な NSToolbarItems を作成しようとしています。IB ですべてを正しく接続しましたが、機能しtoolbarSelectableItemIdentifiers:ていません。呼び出されません。デリゲートはファイルの所有者 (NSWindowController のサブクラス) であり、ツールバーはシートにあります。これが私のコードです:
スクリーンショット:

助けてください。
いいえ、BWToolkit を使用したくありません。
macos - マルチパネル設定ウィンドウに使用されるNSToolbarの初期化状態を設定するにはどうすればよいですか?
多くのMacアプリケーションで見られるように、NSToolbarを使用して複数パネルの設定ウィンドウをコーディングしようとしています。プログラムでツールバーにデータを入力することでこれを行うチュートリアルがいくつかありますが、ツールバー全体をIBで設定することで節約できると思った、多くの「機械的」コードが必要なようです。各NSToolbarアイテムは、以下のアクションを呼び出し、タグを使用してビューを選択します(IBOutletを使用して同じペン先から参照されます)。
次に、各NSToolbarItemに自動検証を設定します。これにより、ツールバー項目で選択/選択解除された外観が得られます。
ここに私の問題があります:私は初期状態を設定するための良い方法を見つけることができませんでした。ウィンドウを開いた瞬間、ツールバー項目はどれも選択されておらず、これを正しく選択できるようにするコードへの更新もありません。私が思いついたのはこれです:
これはすべて冗長な情報です:1)このためだけにツールバーアイテムのアイテム識別子を宣言する必要があります2)ウィンドウタイトルを設定できるように、最初の設定パネルの名前を手動で複製します。
ツールバーを初期化するためのより良い方法はありますか?ツールバーの最初の項目を呼び出して、changeViewControllerActionを呼び出すにはどうすればよいですか?
ありがとう。
objective-c - NSToolbar で NSComboBox を取得してデータソースにメッセージを送信し、デリゲートする方法
NSToolbar に NSComboBox があり、コンボ ボックスからデータソースとデリゲートにメッセージを送信する必要があります。
私のクラスはNSComboBoxDelegateとNSComboBoxDataSourceプロトコルを採用しています。このようなコンボボックスを作成します
次のデータソースも実装し、デリゲート メソッドにはブレーク ポイントが含まれていましたが、これらのメソッドには何も送信されていません。
私が間違っているかもしれないことについて何か提案はありますか? ありがとうございました。
objective-c - コードを使用してNSToolbarItemを非表示にするにはどうすればよいですか?
さまざまなオプションを備えたツールバーがあり、一部のオプションが表示されない場合があります。このコールバックを使用して、アプリケーションでそれらを無効にする方法をすでに理解しています。
しかし、私は必要なときにそれらを本当に隠す方法を見つけていません。誰かがこれを行う方法について、またはそれが本当に可能かどうかについて何かアイデアがありますか?
cocoa - カスタム ビューをツールバーに追加する
私はココアで2時間苦労していますが、成功していません。ツールバーにカスタム ビューを追加したいと考えています。そこで、ウィンドウに NSToolbar を (IB を使用して) 追加し、ビューを追加しました (これは完全に機能します)。IB は NSToolbarItem を自動的に作成しました。Apple の指示に従いました: http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Toolbars/Tasks/AddRemoveToolbarItems.html#//apple_ref/doc/uid/20000755-BBCGJCDJ
問題は、ウィンドウにラベルが表示されているにもかかわらず、ビューが表示されないことです。
描画に使用するコードは次のとおりです(非常に単純で、テスト目的です)
誰かが私を助けることができますか?
前もって感謝します。
objective-c - NSToolbarはLeopardとSnowLeopardで異なって見えます
作業中のCocoaアプリがあり、メインウィンドウに使用しているNSToolbarの外観が異なる結果になります。
具体的には、最後のNSToolbarItemとして検索フィールドを使用していますが、 SnowLeopardでは正しく表示されます。

それはヒョウの下でカットされます:

これらの2つのバージョンを見ると、アイテムの間に置いたスペースはLeopardでは尊重されていないようです。また、Interface Builderのツールバーで更新を行った後、Snowの下でも、実行中のアプリケーションにこれらの変更が反映されない場合があることもわかりました。それらを表示するには、カスタマイズメニューからデフォルトのバーをドラッグする必要があります。
更新 NSGodが示唆したように、NSToolbarが.nibファイルにあるものを常にミラーリングしない理由は、私が有効にした自動保存メカニズムにあります。
この不正行為の原因は何でしょうか?考慮すべき制約(最小および最大)サイズについて何かありますか?いくつかのドキュメントを私に向けてください
UPDATE 2 プログラムでアイテムとスペースをNSToolbarに導入したり、Interface Builderで入力されたものの整合性を(実行時に)チェックしたりする方法はありますか?
objective-c - NSToolbar のラベル領域に描画することはできますか?
NSToolbarItemXcode ステータス ビューに似たビューを使用する があります。現在、ラベルはありませんが、アイテム ラベルが通常描画される領域に描画する方法がわかりません。Xcodeステータスビューと同じように、ビューをその領域に拡張したいと思います。のピクセルの一番下の部分がNSToolbar範囲外であることはわかっていますが、他のアプリケーションがラベル領域に描画されるのを見てきました。何か案は?
編集:明確にするために、これは私がXcodeで参照しているステータスビューです:

Xcode のビューと同じように、ビューの境界がツールバーのラベル領域を超えて拡張されるようにします。
objective-c - 複数の NSViewController でツールバーを使用する
メインビューとして機能する複数の NSViewControllers をロードする単一ウィンドウのドキュメントベースのアプリケーションがあります。各ビュー コントローラーは、特定のビジネス ニーズを処理する自己完結型のクラスであり、動作に必要なすべてのメソッドを実装します。
私の問題は、特定のView Controllerがロードされたときにツールバーを機能させる方法です。これらがウィンドウ クラスに実装されている限り、ツールバーをデリゲートに配線し、ツールバー項目をアクションに配線することに問題はありません。しかし、ビューのメソッドでツールバー項目に新しいアクションを設定しようとするとloadView、ツールバー項目は単にそれを無視し、メイン ウィンドウ クラスでメソッドを呼び出し続けます。
では、ツールバー項目のアクションを動的に変更するにはどうすればよいでしょうか?