Как ждать, пока окно закончит свою живопись в Win32? - PullRequest
1 голос
/ 09 сентября 2011

Я использую функцию PrintWindow, чтобы получить скриншот определенного окна.

Однако по определенной причине вызов PrintWindow обычно запускается, когда окно рисует само, и, таким образом, некоторые части окна, которые еще не были нарисованы, полностью черны.

Можно ли подождать, пока окно завершит свою покраску?

bad screenshot gotten

1 Ответ

2 голосов
/ 09 сентября 2011

Ожидание завершения окраски окна не является решением проблемы. Или, другими словами, проблема не в том, что вызывается PrintWindow, в то время как целевое окно частично проходит цикл рисования.

PrintWindow функционирует, отправляя сообщение WM_PRINT (или WM_PRINTCLIENT) в целевое окно и затем ожидая очереди сообщений целевого окна для обработки этого сообщения. Сообщения в очереди не чередуются.

Чтобы понять суть проблемы, я думаю, вам нужно будет предоставить более подробную информацию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...