スクロールバーを表示する <TOP>
ShowScrollBar スクロールバーを表示
Edit1のプロパティは最下段参照
水平スクロールバーを選択した場合
垂直スクロールバーを選択した場合
水平・垂直両方のスクロールバーを選択した場合
Edit1のプロパティ 複数行入力『なし』の場合
複数行入力『なし』の場合スクロールバーは表示されますが変化しません。
'================================================================ '= スクロールバーを表示する
'= (ShowScrollBar2.bas) '================================================================ #include "Windows.bi" ' スクロールバーを表示 Declare Function Api_ShowScrollBar& Lib "user32" Alias "ShowScrollBar" (ByVal hWnd&, ByVal wBar&, ByVal bShow&) #define SB_BOTH 3 '標準スクロールバーの水平・垂直両方 #define SB_CTL 2 'スクロールバーコントロールを指定する #define SB_HORZ 0 '標準水平スクロールバーを指定する #define SB_SETPARTS &H404 'WM_USER + 4 #define SB_SETTEXTA &H401 'WM_USER + 1 #define SB_VERT 1 '標準垂直スクロールバーを指定する Var Shared Edit1 As Object Var Shared Radio(2) As Object
For i = 0 To 2 Radio(i).Attach GetDlgItem("Radio" & Trim$(Str$(i + 1))) Radio(i).SetFontSize 14 Next Edit1.Attach GetDlgItem("Edit1") : Edit1.SetFontSize 14 '================================================================ '= '================================================================ Declare Function Index bdecl () As Integer Function Index() Index = Val(Mid$(GetDlgRadioSelect("Radio1"), 6)) - 1 End Function '================================================================ '= '================================================================ Declare Sub Button1_on edecl () Sub Button1_on() Var Ret As Long Select Case Index Case 0 sbType = SB_HORZ Radio(1).EnableWindow 0 Radio(2).EnableWindow 0 Case 1 sbType = SB_VERT Radio(0).EnableWindow 0 Radio(2).EnableWindow 0 Case 2 sbType = SB_BOTH Radio(0).EnableWindow 0 Radio(1).EnableWindow 0 End Select Ret = Api_ShowScrollBar(Edit1.GethWnd, sbType, True) End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End