問題タブ [nsoutlineview]
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.
objective-c - 子/親要素に関するNSOutlineViewの問題
NSOutlineViewを実装しており、次のメソッドを実装しています。
そして、次のデリゲートメソッドを実装しました
他の方法
データを取得します
私はいくつかのブログ、チュートリアルをフォローしています、私が直面している問題は、パードキュメントとして、そのアイテムの子の数を計算して送信する必要がある各要素のnumberOfChildrenOfItemでヒットする必要がありますが、私が直面している問題は、上記の関数に一度だけ来ると、その項目もnilです。つまり、他の要素には来ません。委任する必要のあるメソッドがありませんか。
私がオーバーライドする他の方法は以下の通りです、
教えてください、私が欠けている方法はどれですか
objective-c - NSOutlineViewインデントの問題
カスタム要件の場合、セルの表示を処理する必要があります。つまり、私のアプリケーションでは、NSCellをImageTextCell(標準形式のApple)にサブクラス化し、同じものを使用してセルを表示します。
インデントに関しては、すべての要素が同じインデントを持っていることがわかりました。つまり、アウトラインビューでは、2つのグループがあり、各グループには2つ以上の子要素+ 3つの子要素(つまり、非グループアイテム)がトップレベルにあります。しかし、奇妙なことに、すべての要素が同じレベルで表示されています。インデントレベルをどこかに設定する必要があり、インデントレベルごとにテキストと画像を表示する必要がありますか?
objective-c - NSOutlineViewドラッグアンドドロップ
私のアプリケーションでは、NSOutlineViewは次のように使用されます。1-NSOutlineViewの背景を制御したいので、CustomOutlineViewを使用します。
2--CustomeCellを使用して、Cellをカスタマイズする必要があるため
ヘッダーファイル:MyListView.h
また、アウトラインビュー内でドラッグアンドドロップできるはずです。ドラッグアンドドロップを行ったのは、次のとおりです。
およびドラッグアンドドロップをサポートするために次の方法を実装しました
しかし、NSOutlineViewの行をドラッグしようとすると、何も起こりません。NSLogを介してデバッグしようとしても、上記の関数からログが表示されませんでした。重要なメソッドがありませんか?ドラッグアンドドロップをサポートする
objective-c - NSOutline ビューのドラッグ アンド ドロップの問題
親愛なる皆様、私は NSOutline View と戦って、過去 2 ~ 3 日からテーブル内でドラッグ アンド ドロップを実行していますが、私が間違っていることを理解できませんでした。これは私がこれまで行ってきたことです。
要件、1 -- ビューに透明または背景画像 NSoutlineview を表示したい。そのためには、NSOutlineView の drawRect メソッドを上書きする必要があります。これが私が行ったことです。
ヘッダーファイルで
ソースファイルでは、drawRect とその他のものを上書きして、背景画像を描画したり、透明にしたりして、正常に動作しています。
私の見解では、そのように NSOutlineView オブジェクトを宣言しました。
/* * カスタム ビューには、グラデーションやその他の効果を描画する機能があります
*/
ソース ファイルでは、次のメソッドが実装されています。このメソッドは、initWIthFrame から呼び出されます。
以下のように実装されたドラッグアンドドロップに関連するその他の重要なメソッド
Apple DragnDrop のサンプル コードを確認しましたが、何が間違っているのかわかりませんでした。
[pOutlineView setDelegate:self]
機能ですが、それを解決する方法はわかりません。最近、MyTableView から MyOutlineView にアップグレードしました。最近、カスタム テーブル ビューでドラッグ アンド ドロップを実行できました。残りは、DataSource などのように正常に動作しています...
よろしくお願いしますローハン
cocoa - NSoutlineViewとWriteItemについて| ドラッグアンドドロップの問題
Drag-n-Dropを処理するには、次のようにします。
以下のようなWriteItemメソッド、
今、私はコントロールがAcceptDropメソッドに来ることを期待していますが、ブレークポイントはそこに到達せず、Log/gdbで次のログを取得しています
制御がacceptDropメソッドになりませんでした。
「例外で停止」を有効にすると、停止したときのコールスタックは次のようになります。
もう1つ更新します。アウトラインビューで、カスタムセルがあります。これは、使用しているMacImageTextCellインターフェイスファイルにすぎません。
誰かが私を導いてくれますか、私が間違っていること
よろしくローハン
objective-c - NSOutlineView コントロールのハイライトとインデント
私の Outline ビューでは、CustomCell を使用しています。これは、Cocoa ImageTextCell RefrenceCode からコードをいくつか変更して取得したものにすぎません。
セルのハイライトの色を変更することはできますか?
これまでのところ、次のことを行っています - (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView {
}
これは機能していますが、何が起こっているのか、ハイライトセルの色は最初にシステムのデフォルトの色から始まり、次にevenColorによってオーバーライドされます。問題はcellFrame.origin.xで、0から始まっていないと感じています。
このコードを適用した後、出力は次のようになりました
そして私が期待していたこと
objective-c - ソース リスト スタイルでカスタム サブビューを NSOutlineView に追加する
Finder/iTunes/iPhoto のようなソース リストのように見えるように、setの内容の上NSOutlineView
にいくつかのコントロールを追加したいと思います。NSTableViewSelectionHighlightStyleSourceList
したがって、追加するコントロールは、ソース リスト全体の上に配置する必要がありますがNSScrollView
、アウトライン ビューと同じです。それらの背後の色は、ソース lis の色でもある必要があります (ウィンドウがフォーカスを失うと水色から灰色に変化するため、これは特別です)。
NSOutlineView
私はすでにプログラムでその親ビュー ( でありNSClipView
、次にNSScrollView
)内でダウンを移動しようとしましたが、 NSOutlineView
s フレームを変更しても機能しません (フレームはまったく変更されません)。
乾杯
ミスターメイジ
core-data - 同じNSOutlineViewに異なるNSManagedObjectエンティティを表示する
基本的に、3つの異なるCore Dataエンティティ(、、A
)がありB
、 sのセットとsのセットが含まれています。ただし、これら3つのエンティティは互いにまったく異なり、互いの子にアクセスするための一般的な方法や、ビューに表示される値はありません。C
A
B
B
C
これらの3つのエンティティをNSOutlineViewに表示しようとしています。おそらく他の解決策もありますが、私は2つの異なる解決策を思いつきました:
NSOutlineViewDataSourceプロトコルを実装し、各エンティティを異なる方法で処理します。
クラスをカテゴリに統合し、NSOutlineViewが使用する一般的な(一時的な)メソッド/プロパティを追加します。これらのメソッド/プロパティは、モデルエンティティのプロパティから実際の値を取得します。
2番目のオプションを選択し、子のゲッターと表示値を追加しました。ただし、この方法では、Key-Value監視は機能しなくなり、モデルの変更はビューに反映されません。理由はわかりますが、これを正しい方法で解決する方法がわかりません。実際のモデル値の変更を通知してビューに転送する方法を考えていました。
これらの通知を転送する簡単な方法はありますか、それとも他の方法を検討する必要がありますか?
つまり、NSOutlineViewにさまざまな種類のエンティティを表示する必要があり、モデルを台無しにしたくありません。
cocoa - 項目を展開すると NSOutlineView の行インデックスが変更される
NSTableView (例: a
) と NSOutlineView (例: b
) があるとします。
のデータソースでa
、 の選択されたすべてのアイテムの親アイテムを取得しようとしていますb
。行番号で。rowIndex
ofa
のrowIndex
th 番目に選択されたアイテムが必要で、この文字列をこのアイテムの親の名前に連結b
したいと考えています。たとえば、a
次のとおりです。
- 1と1.1
- 2
そしてb
:
- 1
- 1.1 (選択済み)
- 2 (選択済み)
- 3
これは- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
のですa
。
問題は、アイテムを展開すると、[outlineView parentForItem:[outlineView itemAtRow:index]]
常に最後に展開されたアイテムが返されることです。
選択したアイテムとその親のリストを取得しようとしています。アイテムを展開すると、すべてのアイテムの親が に変わりますlast expanded item
。
私は何か間違ったことをしていますか?
前もって感謝します。
cocoa - Cocoa - NSOutlineView の並べ替えのアニメーション化
NSOutlineView
ボタンをクリックするだけでの並べ替えをアニメーション化するにはどうすればよいですか? 高レベルのステップバイステップの説明をいただければ幸いです。ありがとう!