Toon posts:

[VC++] Hoe krijg is de Focus status van een window??

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil dus weten of een window ge-focused is, maar kan nergens vinden waar dat staat.

Het programma is een OpenGL scene waar je met de muis kan bewegen. Het probleem is dat de er vanuit het midden van de scherm gewerkt wordt. De muis positie wordt dan ook iedere keer in het midden gezet. Maar als de window niet ge-focused is dan doet ie dat ook en kun je niks meer doen met de muis.

Nu wil ik dus die mouse movement alleen activeren als de window ge-focused is.

Of er moet een andere manier zijn om in een 3d wereld te bewegen via de muis. :Y)

  • johnwoo
  • Registratie: Oktober 1999
  • Laatst online: 24-08 18:20

johnwoo

3S-GTE

Als het je eigen window is kun je gewoon WM_SETFOCUS en WM_KILLFOCUS afvangen. Je zou ook de GetForegroundWindow API kunnen gebruiken.

4200Wp ZO + 840Wp ZW + 1680Wp NW | 14xIQ7+ + 1xDS3-L | MTVenusE | HWP1


Verwijderd

Topicstarter
hoe bedoel je "eigen window"

Ik had al iets met WM_SETFOCUS en WM_KILLFOCUS gedaan maar dat ging niet helemaal goed, maar ik zal het zo weer effe opniew proberen :)

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 13:37

.oisyn

Moderator Devschuur®

Demotivational Speaker

je zult de WM_ACTIVATE message af moeten vangen. Als je app de focus verliest of krijgt dan wordt deze message gestuurd.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Topicstarter
Yes het werkt met WM_ACTIVATE check ik naar de status van de window en in de MSDN heb ik gevonde dat je dan met de WA_ACTIVE/WA_INACTIVE kon zien wat er gebeurde