检索滚动控件组件的状态
#Include <GuiScrollBars.au3>
_GUIScrollBars_GetScrollBarRGState($hWnd, $idObject)
$hWnd | 窗口句柄 |
$idObject | 指定滚动控件对象. 参数可以是以下值之一: $OBJID_CLIENT - 参数 $hWnd 是滚动控件的窗口句柄. $OBJID_HSCROLL - $hWnd 窗口的水平滚动控件. $OBJID_VSCROLL - $hWnd 窗口的垂直滚动控件. |
成功: | 返回数组格式如下: | |
[0] - 滚动控件本身. | ||
[1] - 顶部或右侧箭头按钮. | ||
[2] - 上部或右侧页面区域. | ||
[3] - 滚动框. | ||
[4] - 底部或左侧页面区域. | ||
[5] - 底部或左侧箭头按钮. | ||
失败: | 设置@error: |
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiScrollBars.au3>
#include <ScrollBarConstants.au3>
Global $iMemo
_Main()
Func _Main()
Local $GUIMsg, $hGUI, $aRGState
$hGUI = GUICreate("ScrollBar Example", 400, 400, -1, -1, BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU, $WS_SIZEBOX))
$iMemo = GUICtrlCreateEdit("", 2, 2, 380, 360, BitOR($WS_HSCROLL, $WS_VSCROLL))
GUICtrlSetResizing($iMemo, $GUI_DOCKALL)
GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
GUISetBkColor(0x88AABB)
GUISetState()
_GUIScrollBars_Init($hGUI)
$aRGState = _GUIScrollBars_GetScrollBarRGState($hGUI, $OBJID_HSCROLL)
MemoWrite("Horizontal (Before)" & @CRLF & "--------------------------------------")
For $x = 0 To 5
MemoWrite("rgstate[" & $x & "]...: " & $aRGState[$x])
Next
MemoWrite(@CRLF & "Disable both arrows: " & _GUIScrollBars_EnableScrollBar($hGUI, $SB_HORZ, $ESB_DISABLE_BOTH) & @CRLF)
$aRGState = _GUIScrollBars_GetScrollBarRGState($hGUI, $OBJID_HSCROLL)
MemoWrite("Horizontal (After)" & @CRLF & "--------------------------------------")
For $x = 0 To 5
MemoWrite("rgstate[" & $x & "]...: " & $aRGState[$x])
Next
While 1
$GUIMsg = GUIGetMsg()
Switch $GUIMsg
Case $GUI_EVENT_CLOSE
ExitLoop
EndSwitch
WEnd
Exit
EndFunc ;==>_Main
; 写入一行到 memo 控件
Func MemoWrite($sMessage)
GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite