|
|
|
мерцание при перерисовке ATL ActiveX-контрола
|
|||
|---|---|---|---|
|
#18+
Подскажите пложалуйста, в чем проблема. Создаю ATL FullControl, обрабатываю, например, наезд и съезд мыши и рисую на контроле. Далее загоняю его или в VB или в ActiveXControlTestContainer, не важно. И когда навожу или убираю с контрола мышь, заметно мерцание при отрисоке. Рисую я по OnDraw, при создании котнтрола выбрал Normalized DC. Пробовал создавать CompatibleDC, рисовал на нем, потом вызывал BitBlt, странно, но результата не дало, даже показалось "блыманье" усилилось (хотя в VB работает отлично, никаких мерцаний). Может, для этого не надо выбирать Normalized DC& Когда создаю ActiveX С помощью MFC - все нормально, никаких мерцаний. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2004, 02:36 |
|
||
|
мерцание при перерисовке ATL ActiveX-контрола
|
|||
|---|---|---|---|
|
#18+
Надо добавить обработку сообщения WM_ERASEBKGND. В объявлении класса: BEGIN_MSG_MAP(CAnyClass) ... ... ... MESSAGE_HANDLER(WM_ERASEBKGND, OnEraseBkgnd) END_MSG_MAP() ... ... ... LRESULT OnEraseBkgnd(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); В реализации класса: LRESULT CGr::OnEraseBkgnd(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled) { return 1; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2004, 12:44 |
|
||
|
|

start [/forum/topic.php?fid=57&gotonew=1&tid=2034523]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
138ms |
get topic data: |
9ms |
get first new msg: |
4ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 185ms |
| total: | 400ms |

| 0 / 0 |
