[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2004/12/06(Mon) 17:23
投稿者名:モモコ
Eメール:
URL :
タイトル:
ListViewのスクロール連動
いつもお世話になってます。

以前質問したListViewの連動スクロールで
自分なりに調べて勉強しましたが
また煮詰まってしまいました。

コマンドボタンのクリックイベントで
ListViewのハンドルを取得し、SendMessageでスクロールを任意の分だけ
移動をすることはできました。

次はサブクラス化して、ListView1がスクロールされたら
スクロールした分だけ、ListView2をスクロールさせたいのですが
スクロールした分だけの引数の取り方がわかりません。

いろいろ調べてはみているのですが
なにか根本的に考え方が違っているような気がします。

Private Const WM_HSCROLL = &H114
Private Const SB_LINERIGHT = 20
      Private Declare Function SendMessage Lib "User32" Alias _
      "SendMessageA" _
         (ByVal hWnd As Long, _
          ByVal wMsg As Integer, _
          ByVal wParam As Integer, _
          ByVal lParam As Long) As Long

Private Sub Command1_Click()

Dim lngRet As Long

lngRet = SendMessage(ListView1.hWnd, WM_HSCROLL, 1, 0)
lngRet = SendMessage(ListView2.hWnd, WM_HSCROLL, 1, 0)
'↑単に右へ1単位スクロールさせているだけ

End Sub

上のコードの1の部分に現在の動かした時の現在地を指定してあげれば
いいのでしょうか?

ど素人でお門違いな質問かもしれませんが、
なにかヒントいただけると助かります(^^;