Поделиться через


Функция GetScrollRange (winuser.h)

Функция GetScrollRange извлекает текущую минимальную и максимальную позиции поля прокрутки (большого пальца) для указанной полосы прокрутки.

Примечание Функция GetScrollRange предоставляется только для обеспечения совместимости. Новые приложения должны использовать функцию GetScrollInfo .
 

Синтаксис

BOOL GetScrollRange(
  [in]  HWND  hWnd,
  [in]  int   nBar,
  [out] LPINT lpMinPos,
  [out] LPINT lpMaxPos
);

Параметры

[in] hWnd

Тип: HWND

Обработка элемента управления полосой прокрутки или окна со стандартной полосой прокрутки в зависимости от значения параметра nBar .

[in] nBar

Тип: int

Указывает полосу прокрутки, из которой извлекаются позиции. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
SB_CTL
Извлекает позиции элемента управления полосой прокрутки. Параметр hWnd должен быть дескриптором для элемента управления полосой прокрутки.
SB_HORZ
Извлекает позиции стандартной горизонтальной полосы прокрутки окна.
SB_VERT
Извлекает положения стандартной вертикальной полосы прокрутки окна.

[out] lpMinPos

Тип: LPINT

Указатель на целочисленную переменную, которая получает минимальную позицию.

[out] lpMaxPos

Тип: LPINT

Указатель на целочисленную переменную, которая получает максимальную позицию.

Возвращаемое значение

Тип: BOOL

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Если указанное окно не имеет стандартных полос прокрутки или не является элементом управления полосой прокрутки, функция GetScrollRange копирует ноль в параметры lpMinPos и lpMaxPos .

Диапазон по умолчанию для стандартной полосы прокрутки — от 0 до 100. Диапазон по умолчанию для элемента управления полосой прокрутки пуст (оба значения равны нулю).

Сообщения, указывающие положение полосы прокрутки, WM_HSCROLL и WM_VSCROLL, ограничены 16 битами данных о положении. Однако, поскольку SetScrollInfo, SetScrollPos, SetScrollRange, GetScrollInfo, GetScrollPos и GetScrollRange поддерживают 32-разрядные данные о положении полосы прокрутки, существует способ обойти 16-разрядный барьер WM_HSCROLL и WM_VSCROLL сообщений. Описание метода см. в разделе Функция GetScrollInfo .

Если параметр nBar SB_CTL, а окно, указанное параметром hWnd , не является системным элементом управления полосой прокрутки, система отправляет SBM_GETRANGE сообщение в окно для получения сведений о полосе прокрутки. Это позволяет GetScrollRange работать с пользовательским элементом управления, который имитирует полосу прокрутки. Если окно не обрабатывает сообщение SBM_GETRANGE , функция GetScrollRange завершается ошибкой .

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll

См. также раздел

GetScrollInfo

GetScrollPos

Справочные материалы

SetScrollInfo

SetScrollPos

SetScrollRange

WM_HSCROLL

WM_VSCROLL