Вопрос

I want to treat WM_PAINT message. But at first, I want to let system to do the default drawing, then I draw something else manually.

For example:

    case WM_PAINT:
        CallWindowProc(DefWndProcTabControl, hwnd, message, wParam, lParam);
        TabControlOnPaint(hwnd);
        return 0;

This works, but is not very good, since it flicks.

One possibility is to make the default drawing done in a memory DC. But I don't know how to do this if I use CallWindowProc(DefWndProcTabControl...).

Any suggestion for this?

Это было полезно?

Решение

If the window you're painting supports it, use WM_PRINT or WM_PRINTCLIENT to do the default painting into a memory DC.

(Trying to do that via CallWindowProc is unlikely to work.)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top