スクロールバーのスライダを移動させる <TOP>
スクロールバーのスライダを移動設定します。
SendMessage ウィンドウにメッセージを送信
WM_HSCROLL(&H114)
水平スクロールバーを調整
SB_LINELEFT(0)
左矢印がクリックされた
SB_LINERIGHT(1)
右矢印がクリックされた
「<<」、「>>」をクリックしスライダを移動させています。「素直にスライダをドラッグしなさい」は無しで・・(^^;
'================================================================ '= スクロールバーのスライダを移動させる
'= (ScrollMove.bas) '================================================================ #include "Windows.bi" ' ウィンドウにメッセージを送信。この関数は、指定したウィンドウのウィンドウプロシージャが処理を終了するまで制御を返さない Declare Function Api_SendMessage& Lib "user32" Alias "SendMessageA" (ByVal hWnd&, ByVal wMsg&, ByVal wParam&, ByVal lParam&) #define WM_HSCROLL &H114 '水平スクロールバーを調整している #define SB_LINELEFT 0 '左矢印がクリックされた #define SB_LINERIGHT 1 '右矢印がクリックされた Var Shared Edit1 As Object Edit1.Attach GetDlgItem("Edit1") : Edit1.SetFontSize 14 '================================================================ '= '================================================================ Declare Function hScrollLeft() Function hScrollLeft() Var Ret As Long Ret = Api_SendMessage(Edit1.GethWnd, WM_HSCROLL, SB_LINELEFT, ByVal 0) End Function '================================================================ '= '================================================================ Declare Function hScrollRight() Function hScrollRight() Var Ret As Long Ret = Api_SendMessage(Edit1.GethWnd, WM_HSCROLL, SB_LINERIGHT, ByVal 0) End Function '================================================================ '= '================================================================ Declare Sub MainForm_Start edecl () Sub MainForm_Start() Edit1.SetWindowText "Declare Function Api_SendMessage& Lib ""user32"" Alias ""SendMessageA"" (ByVal hWnd&, ByVal wMsg&, ByVal wParam&, ByVal lParam&)" End Sub '================================================================ '= '================================================================ Declare Sub Button1_on edecl () Sub Button1_on() Var Ret As Long Ret = hScrollLeft End Sub '================================================================ '= '================================================================ Declare Sub Button2_on edecl () Sub Button2_on() Var Ret As Long Ret = hScrollRight End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End