Einzelnen Beitrag anzeigen

Towmuz

Registriert seit: 21. Sep 2016
Ort: Minden
127 Beiträge
 
Delphi 10.1 Berlin Professional
 
#33

AW: Große Probleme mit VirtualStringTree

  Alt 19. Jun 2017, 08:46
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;
Thomas
  Mit Zitat antworten Zitat