Yo don't know what i did but after i implemented the LisFill out of my SQlite DB it worked with Multiline, didn't had to trim the String.
Here my Function to write into StringTree :
Procedure AddChilds(var Recordset: TSQLQuery; Root : PVirtualNode; VST : TVirtualStringTree; Regelungsart : String);
var
Node : PVirtualNode;
Data : PTreeData;
Query : TSQLQuery;
begin
Query := TSQLQuery.Create(NIl);
//Childs
dbExecute(Query, 'SELECT * FROM RegelungAuswahl WHERE '+Regelungsart+' = 1 and IsChild = 1 and ChildOF = '''+Recordset.FieldByName('ID').AsString+''' ORDER BY Ordnen ');
While not Query.EOF do begin
dbExecute(dbSprachen, 'SELECT * FROM Sprachen WHERE ID = ' + Query.FieldByName('BezID').AsString);
Node := VST.AddChild(Root);
Data := VST.GetNodeData(Node);
Data^.Regelung := dbSprachen.FieldByName(FeldD).AsString;
Data^.Tag:= Query.FieldByName('ID').AsString;
VST.MultiLine[Node] := True;
AddChilds(Query, Node, VST, Regelungsart);
Query.Next;
end;
Query.Free;
end;
Maybe i shouldn't walways bring the VST as param but this way it woks for every VST.
Anyway... thank u very much MR. GetMem. u realy saved me
Edit: just saw ur Code and didn't expect it to be this easy...
so VirtualStringTree became sympathetic again