Функция InvalidateRgn делает рабочую область недействительной внутри заданного региона, добавляя его к текущему обновляемому региону окна. Сделавшись недействительным, регион, наряду со всеми другими областями в обновляемом регионе, отмечается для того, чтобы быть окрашенным, когда появляется следующее сообщение WM_PAINT.
BOOL InvalidateRgn( HWND hWnd, // дескриптор окна HRGN hRgn, // дескриптор региона BOOL bErase // состояние очистки ); |
[in] Дескриптор окна с обновляемым регионом, который должен быть модифицирован.
hRgn[in] Дескриптор региона, который будет добавлен к обновляемому региону. Предполагается, что регион имеет координаты рабочей области. Если этот параметр - NULL, вся рабочая область добавляется к обновляемому региону.
bErase[in] Устанавливает, должен ли фон внутри обновляемого региона быть стерт, когда обновляемый регион обрабатывается. Если этот параметр - TRUE, то фон стирается, когда вызывается функция BeginPaint. Если этот параметр - FALSE, фон остается неизменным.
Возвращаемое значение всегда - не нуль.
Ставшие недействительными области накапливаются в обновляемом регионе до тех пор, пока регион не будет обработан при появлении следующего сообщения WM_PAINT, или до тех пор, пока у региона не будет проверена достоверность при помощи использования функции ValidateRect или ValidateRgn.
Система отправляет сообщение WM_PAINT окну всякий раз, когда его обновляемый регион не пуст и нет никаких других сообщений в очереди приложения для этого окна.
Заданный регион должен быть создан при помощи использования одной из функций региона.
Если параметр bErase - TRUE для любой части обновляемого региона, фон стирается во всем регионе, а не только в заданной его части.
Обзор Окрашивание и рисование, Функции окрашивания и рисования, BeginPaint, InvalidateRect, ValidateRect, ValidateRgn, WM_PAINT
Размещение и совместимость InvalidateRgn |
||
К | Windows Vista | Да |
л | Windows XP | Да |
и | Windows 2000 Professional | Да |
е | Windows NT Workstation | Да версии 3.1 |
н | Windows Me | Да |
т | Windows 98 | Да |
Windows 95 | Да | |
С | Windows Server 2008 | Да |
е | Windows Server 2003 | Да |
р | Windows 2000 Server | Да |
в | Windows NT Server | Да версии 3.1 |
е | ||
р | ||
Используемая библиотека | User32.lib | |
Используемая DLL | - | |
Заголовочный файл | ||
- объявлено в | Winuser.h | |
- включено в | Windows.h | |
Unicode | - | |
Замечания по платформе | Не имеется |