c ++ - Hvordan venter et vindue for at færdiggøre sit maleri i Win32?

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg bruger funktionen PrintWindow til at få et screenshot af et bestemt vindue.


På grund af en eller anden grund udløste kaldet til PrintWindow normalt, når vinduet tegner sig selv, og dermed er nogle dele af vinduet, der endnu ikke er tegnet, helt sort.


Enhver løsning at vente på vinduet for at afslutte sit maleri?


dårligt skærmbillede fået

Bedste reference


Venter på vinduet for at afslutte sit maleri er ikke løsningen på problemet. Eller sæt en anden måde, problemet er ikke, at PrintWindow hedder mens målvinduet er delvist gennem dets malingscyklus.


PrintWindow fungerer ved at sende en WM\_PRINT (eller WM\_PRINTCLIENT besked til målvinduet og derefter vente på målvinduets meddelelseskø for at behandle denne meddelelse. Køede meddelelser adskiller sig ikke.


For at komme til bunden af ​​det egentlige problem tror jeg, du bliver nødt til at levere flere detaljer.