Einzelnen Beitrag anzeigen

Hedge

Registriert seit: 30. Jun 2007
278 Beiträge
 
Delphi 2009 Professional
 
#1

TVirtualTree:Spalteninhalt wird beim Speichern abgeschnitten

  Alt 20. Jun 2009, 17:14
Beim Speichern mit VST.SaveToFile(); muss ein Fehler auftreten.
Die 2. Spalte in meinem VirtualTreeView wird jedes Mal um unterschiedlich viele Zeichen gekürzt.
Meine Datenstruktur sieht so aus:

Delphi-Quellcode:
type
  PTreeData = ^TTreeData;
  TTreeData = record
    FCaption: String;
    FColumn1: String;
    ImageIndex: integer;
  end;
Hier noch die Ereignis-Methode fürs Speichern:
(habe die wie im Tutorial von delphi-treff gemacht)

Delphi-Quellcode:
procedure TForm1.VSTSaveNode(Sender: TBaseVirtualTree; Node: PVirtualNode;
  Stream: TStream);
var
  Data: PTreeData;
  Len1,Len2: integer;
begin
  Data := VST.GetNodeData(Node);

  Len1 := Length(Data.FCaption);
  Stream.write(Len1, SizeOf(Len1));
  Stream.write(PChar(Data.FCaption)^, Len1);

  Len2 := Length(Data.FColumn1);
  Stream.write(Len2, SizeOf(Len2));
  Stream.write(PChar(Data.FColumn1)^, Len2);

  Stream.Write(Data.ImageIndex, SizeOf(Data.ImageIndex));
end;
٩๏̯͡๏)۶
  Mit Zitat antworten Zitat