投稿日 | : 2003/04/13(Sun) 22:14 |
投稿者 | : peta |
Eメール | : |
URL | : |
タイトル | : Re: リストビューの削除処理 |
> DBの検索結果を表示する際にリストビューを使用しています。
> リストビューのリストアイテムの削除処理が遅くて困ってます。
> 1万を超える処理では単純な追加・削除だけみても処理時間が圧倒的に違うようなので向いてないのかと
> 思っていますが、客からはリストビューでお願いと言われてるので変更もできません。
> 削除処理を少しでも速くする方法ってありませんか?
少し速くなる程度ですが。
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long
Private Const LVM_FIRST = &H1000&
Private Const LVM_DELETEALLITEMS = (LVM_FIRST + 9)
Call SendMessage(ListView1.hwnd, LVM_DELETEALLITEMS, 0, ByVal 0&)
削除よりも登録の方が遅いでしょう。
できれば、表示項目数だけデータを保持する様なOCXを探すか自作できれば
いいんですが。