Прежде всего, чтобы рисовать где-то, кроме вашего окна, вам понадобится новый DC. Вы можете использовать HDC memDC = CreateCompatibleDC([your window hdc]);
для его создания.
Теперь вам понадобится растровое изображение для рисования. Используйте HBITMAP memBitmap = CreateCompatibleBitmap ([your window hdc],[your window width],[your window height]);
(при условии, что вы хотите один и тот же размер, если это не так, StretchBlt
должен сделать трюк), чтобы создать это.
Обратите внимание, что когда вы закончите использовать их, вам потребуется DeleteObject (memBitmap);
и DeleteDC (memDC);
для очистки.
После создания выберите растровое изображение на вашем экране DC через SelectObject (memDC, memBitmap);
Теперь сделайте весь свой рисунок на memDC
. Когда закончите, используйте функцию BitBlt()
с источником hdc в качестве memDC и местом назначения hdc в качестве DC вашего окна. Не забудьте удалить то, что вы создали.