Re: PAINTCTRUCT.rcPaint is empty ?!

From
tkl_news@rmts.rnd.su (2:50/128.0)
To
All ()
Date
1996-06-21T09:04Z
Area
SU.WINDOWS.PROG
X-RealName: "Konstantin L. Topanov"


Hi!

>From: Boris Rudakov <Boris_Rudakov@p4.f9.n5054.z2.fidonet.org>
>Message-ID: <31c95c86@p4.f9.n5054.z2.fidonet.org>
>Subject: [News] PAINTCTRUCT.rcPaint is empty ?!
>Date: Thu, 20 Jun 96 14:07:00 +0300

[skip]

>Столкнулся с проблемой на ровном месте - при непонятном (пока) сочетании
>условий BeginPaint устанавливает PAINTSTRUCT.rcPaint в {0, 0, 0, 0},
>соответственно - область обновления тоже пустой.
>
>Вообще, в хелпе про вероятность прихода WM_PAINT с пустым регионом обновления
>ничего не сказано. Значит это баг. Это может быть связано с многократными
>InvalidateRect или Show/HiceCaret (?). Сейчас я пытаюсь отловить баг методом
>исключения, но ни-ч-че не понимаю (с) :(
>
>Кто-то с таким сталкивался ?

В Help есть функции GetUpdateRect() и GetClipBox(). Из их описания
следует, что WM_PAINT может приходить без RECT. Там даже говорится,
что для обработки WM_PAINT можно сделать GetUpdateRect() и, если
он вернет FALSE, то не вызывать Begin/End-Paint() (Debug версия
Windows говорит про неправильную обработку WM_PAINT примерно
следущее:
    "нет ни GetUpdateRect(), ни BeginPaint()").

Regards,

--
Konstantin L. Topanov
phone: +7-(863-2)-32-43-36, RMTS, Rostov-na-Donu, RUSSIA




---
 * Origin: RMTS (2:50/128.0@fidonet)