Introduction au clavier
Un programme Windows contrairement au DOS n'est jamais interrompu pour être averti de la frappe d'une touche. Sous DOS, vous pouviez utiliser une interruption 09h qui était une interruption asynchrone (pouvant arrivée n'importe quand). Sous Windows, l'application devra lire sa file de message pour voir si une touche du clavier a été frappée. En fait, le système intercepte toutes les touches et les stockes dans sa file de message. Puis il détermine le type de touche. Si la touche a un effet lié au système (par exemple ALT-TAB), il traite l'information. Sinon, l'application qui a le focus va recevoir dans sa propre file de message les informations concernant la touche. Ce principe de file système puis file de l'application va ainsi permettre d'envoyer systématiquement les informations à la bonne application.
Pour déterminer si votre application a le focus d'entrée, ou
plutôt une de ces fenêtres (car il est tout à fait possible
d'avoir plusieurs fenêtres pour la même application), il suffit
de traiter le message WM_SETFOCUS. A l'inverse, une fenêtre qui perd le
focus d'entrée va recevoir WM_KILLFOCUS. Cependant, seule la fenêtre
qui a le focus recevra les messages clavier.