Шаг 69 - Функция InvalidateRect()

Указывает прямоугольник для перерисовки окна:

BOOL InvalidateRect
( 
	HWND hWnd,		// указатель на окно
	CONST RECT *lpRect,	// прямоугольник перерисовки
	BOOL bErase		// режим перерисовки
);

Если первый параметр NULL, то будут перерисованы все окна. Если второй параметр NULL, то будет перерисована вся область окна. Последний параметр указывает на действия с фоном, если TRUE, то фон будет стерт, иначе оставлен. При удачном выполнении этой функции результат отличен от нуля.

Указанные области перерисовки накапливаются, пока не будет получено сообщение WM_PAINT или пока эта функция не будет отменена противоположной функцией ValidateRect(). Само сообщение WM_PAINT посылается при необходимости изменить область, но только когда нет в очереди других сообщений. При установке нескольких областей производится их объединение и обработка одним WM_PAINT.

69.gif (3205 b)

Типичная обработка сообщения в главной функции окна:

case WM_PAINT:
	hDC=BeginPaint(hWnd, &ps);
	/* операции вывода */
	EndPaint(hWnd, &ps);
break;

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.