Retrieves the current position of the scroll box (thumb) in the specified scroll bar
#include <GuiScrollBars.au3>
_GUIScrollBars_GetScrollPos ( $hWnd, $iBar )
$hWnd | Handle to the window |
$iBar | Specifies the type of scroll bar. This parameter can be one of the following values: $SB_CTL - Retrieves the position of the scroll box in a scroll bar control. The $hWnd parameter must be the handle to the scroll bar control. $SB_HORZ - Retrieves the position of the scroll box in a window's standard horizontal scroll bar $SB_VERT - Retrieves the position of the scroll box in a window's standard vertical scroll bar. |
Success: | the current position of the scroll box. |
Failure: | -1. |
_GUIScrollBars_SetScrollInfoPos
Search GetScrollPos in MSDN Library.
#include <GUIConstantsEx.au3>
#include <GuiScrollBars.au3>
#include <StructureConstants.au3>
#include <WindowsConstants.au3>
Global $g_idMemo
Example()
Func Example()
Local $hGUIMsg, $hGUI
$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, 380, 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)
_GUIScrollBars_SetScrollInfoPos($hGUI, $SB_HORZ, 10)
MemoWrite("Scroll Pos Horizontal: " & _GUIScrollBars_GetScrollPos($hGUI, $SB_HORZ))
Sleep(1000)
_GUIScrollBars_SetScrollInfoPos($hGUI, $SB_HORZ, 0)
MemoWrite("Scroll Pos Horizontal: " & _GUIScrollBars_GetScrollPos($hGUI, $SB_HORZ))
Sleep(1000)
_GUIScrollBars_SetScrollInfoPos($hGUI, $SB_VERT, 20)
MemoWrite("Scroll Pos Vertical: " & _GUIScrollBars_GetScrollPos($hGUI, $SB_VERT))
Sleep(1000)
_GUIScrollBars_SetScrollInfoPos($hGUI, $SB_VERT, 0)
MemoWrite("Scroll Pos Vertical: " & _GUIScrollBars_GetScrollPos($hGUI, $SB_VERT))
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