TreeViewでノードの状態を保存するには?

解決


鮪。  2005-08-20 03:21:35  No: 17157

お分かりになる方がいらっしゃいましたら教えていただけると幸いです。

過去ログを参照しつつ、
http://xdelphi.xtort.net/data/saving-and-loading-a-treeview-with-data.html

上記HPのサンプルを利用してTTreeViewの状態の保存・読込を行っているのですが、
ノードがExpandしているかどうかを保存することができません。
(他の必要な状態は大方問題なくできたのですが。。。)

ノードの開/閉状態を保存するにはどのようにすると良いでしょうか?


anone  2005-08-20 03:56:19  No: 17158

Data 領域に保存したらよいのでは? すでに何かに使ってますか?


鮪。  2005-08-20 06:26:54  No: 17159

Data領域は既に使っているため、ほかの手順があれば教えていただければと思うのですが・・・。


anone  2005-08-20 08:23:43  No: 17160

挙げられたコード例で、Save Load ともに Data を保存/読み出した後、勝手に
 Boolean な値を保存/読み出したらいいのでは?

読み出すときにそれを読んで、自分で開/閉状態を制御出来るでしょう。

TTreeNode.Expanded は Boolean なので TWriter TReader の WriteBoolean と
ReadBoolean が使えます。


鮪。  2005-08-25 09:15:02  No: 17161

ReadBooleanとWriteBooleanを使用してうまくいきました。
ノードをReadしている最中にExpandを反映させても
うまくいかなかったので、Expand情報を別領域に保持し、
すべての情報をReadした後にノードに対して反映させると
うまくいきました。

anone様、ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加