winapi - Meddelelse modtaget, når vinduet bliver aktiveret

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at pause et DirectX-spil, når vinduerne mister fokus, men meddelelserne synes at være inkonsekvente.


Når du bruger Windows-tilstand, modtages WM\_SETFOCUS og WM\_KILLFOCUS meddelelser, og alt fungerer fint, men disse meddelelser modtages ikke, når du bruger fuldskærmstilstand. WM\_NCACTIVATE modtages, når du bruger fuldskærmstilstand, og det virker fint, men i vinduemodus modtages ikke, når applikationen minimeres fra proceslinjen. WM\_ACTIVATEAPP modtages heller ikke i flere tilfælde.


Er der nogen konsistent måde at håndtere gevinst/tabe fokus problem på? Jeg vil kun bruge en besked, der modtages i både fuldskærm og vinduetilstand.

Bedste reference


Du skal bruge WM\_ACTIVATE for det. [1]