私はTVirtualStringTreeのうち、次のようになり、結果取得しようとしています:は、仮想ツリービュー内のアイテムグループごとにヘッダーバー(TVirtualStringTree)とマスター・ディテール・ビューを作成
私がいることを信じているがTVirtualStringTree
(Mike Lischkeの主なVirtual Treeviewコントロール)を直接使用するか、継承されたコントロールをサブクラス化して継承するか、またはTVirtualDrawTree
に移動することで可能です。ここで
私が持っている問題は、私が取るために、列0のテキストを取得するように見えることができないということです仮想ツリービューコントロールの水平領域全体。私が必要とするように見える複数行のテキストを表示する上級デモのバーチャルツリービューのデモがありますが、ヘッダー行の下に必要な詳細列と組み合わせて適用する方法がわかりません(Node、ノード、画像内のノード)。ここで
は、私が試したものです:BeforeCellPaintイベントで
- 修正ContentRect.Right:
- は
TreeOptions.MiscOptions
中にtoGridExtensions
を設定します。ここで
私はcontentRectを変更しようとしたかを示すコードサンプルです:
procedure TForm1.VirtualStringTree1BeforeCellPaint(Sender: TBaseVirtualTree;
TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex;
CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect);
var
level:Integer;
begin
level := VirtualStringTree1.GetNodeLevel(Node);
if (level=0) then
Inc(ContentRect.Right, 300);
end;
アップデート:下の受け入れ答えを使用して
、私は次を得る:
ブリリアントを設定します!それはちょうど素晴らしい作品です。 –