Функция GetScrollPos (winuser.h)
Функция GetScrollPos извлекает текущую позицию поля прокрутки (большого пальца) в указанной полосе прокрутки. Текущая позиция является относительным значением, которое зависит от текущего диапазона прокрутки. Например, если диапазон прокрутки от 0 до 100, а поле прокрутки находится в середине полосы, текущая позиция будет 50.
Синтаксис
int GetScrollPos(
[in] HWND hWnd,
[in] int nBar
);
Параметры
[in] hWnd
Тип: HWND
Обработка элемента управления полосой прокрутки или окна со стандартной полосой прокрутки в зависимости от значения параметра nBar .
[in] nBar
Тип: int
Указывает полосу прокрутки для проверки. Этот параметр может принимать одно из указанных ниже значений.
Возвращаемое значение
Тип: int
Если функция выполняется успешно, возвращается текущее положение поля прокрутки.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Функция GetScrollPos позволяет приложениям использовать 32-разрядные позиции прокрутки. Хотя сообщения, указывающие положение полосы прокрутки, WM_HSCROLL и WM_VSCROLL, ограничены 16 битами данных о положении, функции SetScrollPos, SetScrollRange, GetScrollPos и GetScrollRange поддерживают 32-разрядные данные о положении полосы прокрутки. Таким образом, приложение может вызывать GetScrollPos при обработке сообщений WM_HSCROLL или WM_VSCROLL для получения 32-разрядных данных о положении полосы прокрутки.
Чтобы получить 32-разрядную позицию поля прокрутки (большого пальца) во время SB_THUMBTRACK запроса кода в WM_HSCROLL или WM_VSCROLL сообщении , используйте функцию GetScrollInfo .
Если параметр nBar SB_CTL, а окно, указанное параметром hWnd , не является системным элементом управления полосой прокрутки, система отправляет сообщение SBM_GETPOS в окно для получения сведений о полосе прокрутки. Это позволяет GetScrollPos работать с пользовательским элементом управления, который имитирует полосу прокрутки. Если окно не обрабатывает сообщение SBM_GETPOS , функция GetScrollPos завершается ошибкой.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
Набор API | ext-ms-win-ntuser-misc-l1-2-0 (представлено в Windows 8.1) |
См. также раздел
Справочные материалы