VirtualStringTreeコンポーネントを使用して単純な連絡先マネージャーを実装しようとしています。すべてテキストを含む3列のみのリストビューコンポーネントのように設定しました。
データ構造には、別のStackOverflowの質問で言及されたLinasのsvTreeを使用しています。
私はこのような記録を宣言しました:
type
TMainData = record
Name, Email, Password: string;
end;
フォームのOnCreateには、次のものがあります。
procedure TForm1.FormCreate(Sender: TObject);
begin
MyTree := TSVTree<TMainData>.Create(False);
MyTree.VirtualTree := vst1;
end;
TEditsからのデータを次のように追加しています。
procedure TForm1.BuildStructure;
var
svNode: TSVTreeNode<TMainData>;
Data: TMainData;
begin
MyTree.BeginUpdate;
try
Data.Name := edtname.Text;
Data.Email := edtEmail.Text;
Data.Password := edtPassword.Text;
svNode := MyTree.AddChild(nil, Data);
finally
MyTree.EndUpdate;
end;
Label1.Caption := 'Count: '+IntToStr(MyTree.TotalCount);
end;
これをストリームまたはファイルに保存してロードバックするにはどうすればよいですか?MyTree.SaveToFile('C:/Test.dat')
とを使用してみMyTree.LoadFromFile('C:/Test.dat')
ましたが、ロードバックすると、ツリービューにデータが含まれず、空白行のみが含まれます。