問題タブ [nstreecontroller]
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 - バインディングを使用して NSBrowserCell イメージを設定しますか?
NSTreeNode オブジェクトの配列にバインドされた NSTreeController に NSBrowser を接続しました。Content バインディングと Content Value バインディングを設定してツリー コントローラを適切に参照することで、テキスト部分を機能させるのは簡単ですが、バインディングを使用して各セルの画像を設定するにはどうすればよいでしょうか。
cocoa - NSTreeController - malloc double free エラー
私は自分のプログラムで NSOutlineView と組み合わせて NSTreecontroller を使用していますが、私のプログラムは常に吐き出しています: malloc: *** error for object 0x1d70d0: double free
. これらのメッセージは、IB でバインディングを削除すると消えます。なぜこれが起こっているのですか?
注: これは私のプログラムをクラッシュさせる動作ではありませんが、クラッシャーのルートであると思われます。
objective-c - 削除ボタンをクリックすると、選択されている行ではなく、アウトライン ビューの下部にある行が削除されるのはなぜですか?
アウトライン ビュー (NSTreeController に接続) で行を選択して削除ボタンをクリックすると、選択した行は削除されませんが、実際にはテーブルの下部にある行が削除されます。詳細については、ボタンの接続を次に示します。
そしてエンティティモデル:
さらに情報が必要な場合は、お気軽にコメントしてください。
objective-c - NSOutlineView、NSTreeController、および willDisplayCell
私は Obj-C と Cocoa にかなり慣れていないので、愚かなことを許してください。
独自のオブジェクトの配列を提供する NSTreeController で NSOutlineView を使用しています。私の委任者は、アウトライン ビューの willDisplayCell を使用してセルのアイコンを設定しています (私は NSBrowserCell を使用しています)。ただし、どの画像を描画するかを確認できるように、そのインスタンスでオブジェクトデータを取得する方法を一生理解できません。
objective-c - NSOutlineView と NSTreeController の例
コア データを使用せずにNSTreeControllerバインディングでNSOutlineViewを使用する方法に関するリンクをいくつか送ってください。
cocoa - 「見えない」ルート項目で NSTreeController、NSOutlineView、および Core Data を使用するにはどうすればよいですか?
特定のエンティティの単純なツリーで構成されるコア データ モデルがあり、これには 2 つの関係がparent
ありchildren
ます。にバインドされNSTreeController
たモデルを管理しています。NSOutlineView
NSTreeController
私の問題は、単一のルート オブジェクトが必要なことですが、これはアウトライン ビューに表示されるべきではなく、その子のみがアウトライン ビューのトップ レベルに表示されるべきです。NSTreeController
Interface Builderのフェッチ述語を に設定するとparent == nil
、ルート項目がアウトライン ビューの最上位項目として表示されることを除いて、すべて正常に動作します。
私のエンティティにはisRootItem
、ルート項目のみに当てはまる属性 があります。
私のモデルは次のようになります。
アウトライン ビューは次のようになります。
(ソース: menumachine.com )
アウトライン ビューの最上位にノード 2、3、および 4 を表示する必要がありますが (ノード 1 は表示されません)、その親は「ノード 1」のままです。ノード 1 の値はYES
forisRootItem
で、他のすべてのノードの値は ですNO
。
ツリー コントローラーのフェッチ述語を に設定するとparent.isRootItem == 1
、ツリーが正しく表示されますが、新しいアイテムをトップ レベルに追加するとすぐに失敗します。これは、ツリー コントローラーが「見えない」ルート アイテムを親として割り当てないためです。新しいアイテム。
NSTreeController
この状況で/のNSOutlineView
組み合わせを機能させる方法はありますか?
cocoa - コアデータによって駆動されるバインディングを備えたNSOutlineView
NSOutlineView
アプリケーションのソースリストとして機能し、データモデルはCoreDataで作成されています。次のように、バインディングを使用して(可能であれば)これらのものを接着したいと思います。
モデルには3つの主要なエンティティがあります。たとえば、「店舗」、「車」、「人」と呼びましょう。
私の目標は、アウトラインビューに3つの「グループ」(iTunesのプレイリストなどの拡張可能なノード)を持たせ、各グループが私のエンティティの1つを表し、一覧表示することです。また、ウィンドウの下部に「追加」するための3つのボタンがあります。そのアクションを実行するために配線したい「Store」、「AddCar」など。
これまでのところ、ウィンドウのペン先には、ウィンドウコントローラーのNSManagedObjectContextインスタンスにバインドされているTreeControllerがありますが、TreeControllerからアウトラインビューを適切にバインドして設定する方法がわかりません。
これはバインディングで可能ですか?アウトラインノードのエンティティを使用して2番目の管理対象オブジェクトモデルを作成するチュートリアルを見たことがありますが、この記事に対するコメントの中には、これは悪い考えだと書かれているものもあります。どうすればいいのかよくわかりません。どんな助けでも素晴らしいでしょう!
cocoa - NSTreeControllerKVOの問題
NSArrayControllerサブクラスの「items」(カスタム)プロパティに配列がバインドされているNSTreeControllerがあります。ツリーコントローラーはNSArrayControllerの選択にバインドされていないため、アレイコントローラーの選択が変更された後にアイテムをフェッチする必要があることをツリーコントローラーに通知する必要があります。
NSArrayControllerのサブクラスで次のことを行いました。
これで十分なAFAIKになるはずです。クラスメソッドが呼び出されますが、効果がないようです。
オブザーバーを実装すると、正常にselectedObjects
機能します。
どんな手掛かり?
cocoa - NSTreeController の問題にバインドされた NSArrayController "Content set"
NSTreeController と CoreData データモデルにバインドされた NSOutlineView があります。NSOutlineView は彼のデータを適切に表示します。
NSTableView のセル値が NSArrayController にバインドされ、CoreData からのデータが表示されます。NSTableview も彼のデータを適切に表示します。
Datamodel には、NSOutlineView と NSTableView のデータ間に関係があります
NSArrayController の「コンテンツ セット」を NSTreeController.selection.name にバインドして、NSOutlineView の選択に関連するすべての項目を表示しようとすると、次のエラーが発生します。
クラス NSCFString の無題のオブジェクトから NSSet を作成できません (「無題」は NSOutlineViews ノードの値です)
また、NSTableView のデータは表示されません。
IB でのすべてのセットアップ - これを機能させるためのヒントはありますか?
どうもありがとう!
file - NSTreeController ファイルへの保存方法
こんにちは、NSTreeController を使用して NSOutlineView を制御しています。このアプリケーションは、ブックマークをファイルからアプリケーションにロードします。ADC の SourceView の例のように:
http://developer.apple.com/mac/library/samplecode/SourceView/index.html
私の質問は、ユーザーが変更を加えたら、ブックマークをファイルに保存する方法です。アプリケーションの内部で配列/ツリーを維持し、終了する前に保存する必要がありますか、それとも簡単な方法はありますか?