スクロールバーの有効・無効化 <TOP>
スクロールバーを有効化・無効化と切り替えます。
EnableScrollBar スクロールバーの有効・無効化
'================================================================ '= スクロールバーの有効・無効化 '= (EnableScrollBar.bas)
'================================================================ #include "Windows.bi" ' スクロールバーの有効・無効化 Declare Function Api_EnableScrollBar& Lib "user32" Alias "EnableScrollBar" (ByVal hWnd&, ByVal wSBflags&, ByVal wArrows&) #define SB_BOTH 3 '標準スクロールバーの水平・垂直両方 #define SB_CTL 2 'スクロールバーコントロールの情報を設定 #define SB_HORZ 0 '標準スクロールバーの水平 #define SB_VERT 1 '標準スクロールバーの垂直 #define ESB_ENABLE_BOTH &H0 '両方向有効 #define ESB_DISABLE_LTUP &H1 '左・上方向無効 #define ESB_DISABLE_RTDN &H2 '右・下方向無効 #define ESB_DISABLE_BOTH &H3 '両方向無効 Var Shared List1 As Object Var Shared Button1 As Object Var Shared Button2 As Object List1.Attach GetDlgItem("List1") : List1.SetFontSize 14 Button1.Attach GetDlgItem("Button1") : Button1.SetFontSize 14 Button2.Attach GetDlgItem("Button2") : Button2.SetFontSize 14 '================================================================ '= '================================================================ Declare Sub MainForm_Start edecl () Sub MainForm_Start() Var i As Long For i = 1 To 20 List1.AddString Str$(i) Next End Sub '================================================================ '= スクロールバーの無効化 '================================================================ Declare Sub Button1_on edecl () Sub Button1_on() Var Ret As Long Ret = Api_EnableScrollBar(List1.GethWnd, SB_VERT, ESB_DISABLE_BOTH) End Sub '================================================================ '= スクロールバーの有効化 '================================================================ Declare Sub Button2_on edecl () Sub Button2_on() Var Ret As Long Ret = Api_EnableScrollBar(List1.GethWnd, SB_VERT, ESB_ENABLE_BOTH) End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End