VB6.0用掲示板の過去のログ(No.2)−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の部分に現在の動かした時の現在地を指定してあげれば
いいのでしょうか?

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


- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -