Function Reference


_GUIScrollBars_GetScrollBarRGState

Retrieves the state of a scroll bar component

#include <GuiScrollBars.au3>
_GUIScrollBars_GetScrollBarRGState ( $hWnd, $iObject )

Parameters

$hWnd Handle to the window
$iObject Specifies the scroll bar object. This parameter can be one of the following values:
    $OBJID_CLIENT - The $hWnd parameter is a handle to a scroll bar control.
    $OBJID_HSCROLL - The horizontal scroll bar of the $hWnd window.
    $OBJID_VSCROLL - The vertical scroll bar of the $hWnd window.

Return Value

Success: an array in the following format:
    [0] - The scroll bar itself.
    [1] - The top or right arrow button.
    [2] - The page up or page right region.
    [3] - The scroll box (thumb).
    [4] - The page down or page left region.
    [5] - The bottom or left arrow button.
Failure: sets the @error flag to non-zero.

Related

_GUIScrollBars_GetScrollBarInfoEx

Example

#include <GUIConstantsEx.au3>
#include <GuiScrollBars.au3>
#include <WindowsConstants.au3>

Global $g_idMemo

Example()

Func Example()
        Local $hGUIMsg, $hGUI, $aRGState

        $hGUI = GUICreate("ScrollBar Example", 400, 400, -1, -1, BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU, $WS_SIZEBOX))
        $g_idMemo = GUICtrlCreateEdit("", 2, 2, 380, 360, BitOR($WS_HSCROLL, $WS_VSCROLL))
        GUICtrlSetResizing($g_idMemo, $GUI_DOCKALL)
        GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
        GUISetBkColor(0x88AABB)

        GUISetState(@SW_SHOW)

        _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
                $hGUIMsg = GUIGetMsg()

                Switch $hGUIMsg
                        Case $GUI_EVENT_CLOSE
                                ExitLoop
                EndSwitch
        WEnd

        Exit
EndFunc   ;==>Example

; Write a line to the memo control
Func MemoWrite($sMessage)
        GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite