Moin,
habe jetzt nicht so ganz genau den Thread komplett gelesen, aber ich glaub du könntest
in diesem Fall auch einfach im
OnInitNode
festlegen:
Delphi-Quellcode:
procedure TForm2.VSTInitNode(Sender: TBaseVirtualTree; ParentNode, Node: PVirtualNode; var InitialStates: TVirtualNodeInitStates);
begin
if Length(VST.GetNodeData<TDeinObject>(Node).Col1) > 10 then
begin
VST.MultiLine[Node] := True;
VST.NodeHeight[Node] := 40; // oder sonstwas wie´s dir passt
end
end;
Dann kann das händische Pinseln im
OnDrawText
raus und mit
OnGetText
dann:
Delphi-Quellcode:
procedure TForm2.VSTGetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: string);
var
s: string;
begin
case Column of
0: begin
if Length(VST.GetNodeData<TDeinObject>(Node).Col1) > 10 then
begin
s := 'blablalblabla' + #13#10 + 'blablabla';
end else begin
s := 'blabla';
end;
CellText := s;
end;
end;
end;