1

Windows Explorer (または regedit など) を検討してください。左側にはツリー ビューがあり、右側にはリスト ビューがあります。私が知っているすべてのケースで、右側のビューの内容は、左側のペインで選択したノードの属性を反映しています。これはすべてうまくいっています...しかし、私が望むものではありません。

表示したいツリーのノードには、各ノードに関連付けられた非常に少数の属性 (2 ~ 3) があります。これは、テーブルの行として水平方向に表示するのに妥当な量です。非常に少ないプロパティを持つ単一のノードでそのリスト ビュー スペースをすべて無駄にするのではなく、リスト ビューにツリー全体のプロパティのテーブルを (現在展開されているツリーの一部として) 表示したいと考えています。したがって、左側のビュー (ツリー) の n 番目の行は、右側のビュー (リスト/テーブル) の n 番目の行に直接対応し、ツリーのプロパティの適切な概要が得られます。

これを行うコードを知っている人はいますか? CListCtrl を CTreeCtrl にスレーブ化するのが最善の方法であり、何らかの方法で垂直スクロール機能をオーバーライドして、それらが一緒にロックされるようにしていると推測しています。このようにスクロールを一緒にロックできるかどうかはわかりません...とりわけ!すべてのアドバイスを歓迎します:-)

4

2 に答える 2

4

あなたはおそらくCoumnTreeControlを探しています

于 2010-05-25T22:56:54.833 に答える
0

リスト コントロールをオーナー描画にすると、ツリー コントロールと並べるのは簡単です。ただし、2 つのスクロール バーを同期する必要があるという問題がまだ残っています。おそらく、一方にスクロール イベントをキャプチャして、もう一方にコピーできます。

もう 1 つのオプションは、リスト コントロールをスキップし、ヘッダー コントロールを使用して列を定義し、必要に応じてテキストを描画することです。

于 2010-05-25T22:49:18.107 に答える