Hi stOrM,
wieso nimmst Du ??
Column := vst.Header.Columns.Count;
Wieviele Spalten hast Du denn? Wenn ich so tue, funzt es.
Delphi-Quellcode:
procedure tForm1.vInitNode(Sender: TBaseVirtualTree; ParentNode,
Node: PVirtualNode; var InitialStates: TVirtualNodeInitStates);
var
Column: TColumnIndex;
i:Integer;
begin
Node.Align := 20; // Alignment of expand/collapse button nearly at the top of the node.
for i:= 0 to v.Header.columns.count-1 do begin
Column := i;
case Column of
0: // nicht multiline
begin
v.NodeHeight[Node] := 40;
Include(InitialStates, ivsHasChildren);
end;
1,3,7,8,10,11: // soll multiline sein! seltsam ist, das immer nur Column 0 auf multiline steht ich weiss nicht warum!
begin
v.NodeHeight[Node] := 120;
Include(InitialStates, ivsMultiline);
end;
end;
end;
end;
Ganz klar ist mir noch nicht, wieso es das tut, aber ich hab festgestellt, daß auch Column[0] als Multiline dargestellt wird, obwohl es nicht explizit hier drinsteht. Kann ein einzelnes Column überhaupt getrennt Multiline sein? Ich hab eher den Eindruck, daß Du sobald Du Include mit Multiline setzt, alle Columns in dem Node auf Multiline gesetzt werden. Würde sogar Sinn machen, finde ich.