お世話になります。
質問がありますので宜しくお願いします。
TreeView(VB6仕様)でノードを追加している間、処理の高速化のために再描画処理を回避させたい(=追加処理が終わってからいっぺんに再描画させたい)のですが上手くいきません。
以下の2パターンで試してみたのですが効果がありませんでした。
・パターン1
Ret = LockWindowUpdate(TreeView1.hwnd)
↓
TreeView1にNodeを追加する処理・・・
↓
Ret = LockWindowUpdate(0&)
・パターン2
Ret = PostMessage(TreeView1.hwnd, WM_SETREDRAW, False, Byval CLng(0))
↓
TreeView1にNodeを追加する処理・・・
↓
Ret = PostMessage(TreeView1.hwnd, WM_SETREDRAW, True, Byval CLng(0))
両パターン共、戻り値には1が来るのでエラーにはなっていないと思うのですが・・・(?_?;)
何卒宜しくお願いしますm(__)m
WM_SETREDRAWをFalseにした場合、スクロールやBackColorの変更には有効ですが、
NodeがAddされたりした場合等TreeViewの構造が変わった場合はResetされるようですよ。
返信が遅くなってすみません。
>WM_SETREDRAWをFalseにした場合、スクロールやBackColorの変更には有効ですが、
NodeがAddされたりした場合等TreeViewの構造が変わった場合はResetされるようですよ。
そうだったんですね・・・どうりで何度やっても変わらないわけですね(^_^;A)
本当にありがとうございました。すごく勉強になりました。
また宜しくお願いしますm(__)m
ツイート | ![]() |