|
|
|
мерцание при перерисовке 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&msg=32660207&tid=2034523]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
141ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 439ms |

| 0 / 0 |
