ListViewでオートスクロール

解決


NCC-1701  2003-08-30 23:50:42  No: 79207  IP: [192.*.*.*]

ListViewで選択されている行を常に表示させるために自動でスクロール
させる方法は有りますか?

ListViewはlvwReport表示です。

リストは最大で1000行ほどあり、編集操作の度に消去して書き直し、
目的の行を選択しています。そのため選択行が表示範囲外になると
反転表示していても一々スクロールさせる必要があります。

次の方法でやってはいる物のうまくいきません。

一番上から選択行までスクロールさせています。
xは選択行のインデックスを表しています。
For i = 1 To x
    Z = SendMessage(ListView1.hWnd, WM_VSCROLL, SB_LINEDOWN, 0)
Next i

この方法では選択行が全体の約半分ぐらいからスクロールしなくなります。

何かこれ以外の方法でスクロールさせる方法は無いでしょうか?

編集 削除
魔界の仮面弁士  2003-08-31 15:28:50  No: 79208  IP: [192.*.*.*]

EnsureVisibleメソッドを使ってみるとか。

編集 削除
NCC-1701  2003-09-05 22:46:19  No: 79209  IP: [192.*.*.*]

早速やってみました。
教えてくれてどうもありがとうございます。

編集 削除