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

Функция ScrollDC прокручивает прямоугольник битов по горизонтали и вертикали.

Синтаксис

BOOL ScrollDC(
  [in]  HDC        hDC,
  [in]  int        dx,
  [in]  int        dy,
  [in]  const RECT *lprcScroll,
  [in]  const RECT *lprcClip,
  [in]  HRGN       hrgnUpdate,
  [out] LPRECT     lprcUpdate
);

Параметры

[in] hDC

Тип: HDC

Выполните обработку в контексте устройства, который содержит прокручиваемые биты.

[in] dx

Тип: int

Указывает объем горизонтальной прокрутки (в единицах устройства). Этот параметр должен быть отрицательным значением для прокрутки влево.

[in] dy

Тип: int

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

[in] lprcScroll

Тип: const RECT*

Указатель на структуру RECT , содержащую координаты битов для прокрутки. Единственными битами, затронутыми операцией прокрутки, являются биты на пересечении этого прямоугольника и прямоугольника, заданного lprcClip. Если lprcScroll имеет значение NULL, используется вся клиентская область.

[in] lprcClip

Тип: const RECT*

Указатель на структуру RECT , содержащую координаты прямоугольника обрезки. Единственными битами, которые будут окрашены, являются биты, которые остаются внутри этого прямоугольника после завершения операции прокрутки. Если lprcClip имеет значение NULL, используется вся клиентская область.

[in] hrgnUpdate

Тип: HRGN

Дескриптор области, обнаруженной процессом прокрутки. ScrollDC определяет эту область; это не обязательно прямоугольник.

[out] lprcUpdate

Тип: LPRECT

Указатель на структуру RECT , которая получает координаты прямоугольника, ограничивающего область обновления прокрутки. Это самая большая прямоугольная область, требующая перерисовки. При возврате функции значения в структуре находятся в клиентских координатах независимо от режима сопоставления для указанного контекста устройства. Это позволяет приложениям использовать область обновления в вызове функции InvalidateRgn , если это необходимо.

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

Тип: BOOL

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

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

Комментарии

Если параметр lprcUpdate имеет значение NULL, система не вычисляет прямоугольник обновления. Если параметры hrgnUpdate и lprcUpdate имеют значение NULL, система не вычисляет регион обновления. Если параметр hrgnUpdate не имеет значение NULL, система работает так, как если бы она содержала допустимый дескриптор области, обнаруженной процессом прокрутки (определяемой ScrollDC).

Если необходимо прокрутить всю клиентную область окна, используйте функцию ScrollWindowEx .

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll
Набор API ext-ms-win-ntuser-misc-l1-5-0 (появилось в Windows 10, версия 10.0.10240)

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

InvalidateRgn

Другие ресурсы

RECT

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

ScrollWindowEx