WM_APPCOMMAND message

Avertit une fenêtre que l’utilisateur a généré un événement de commande d’application, par exemple en cliquant sur un bouton de commande d’application à l’aide de la souris ou en tapant une touche de commande d’application sur le clavier.

#define WM_APPCOMMAND                   0x0319

Paramètres

wParam

Descripteur de la fenêtre dans laquelle l’utilisateur a cliqué sur le bouton ou appuyé sur la touche. Il peut s’agir d’une fenêtre enfant de la fenêtre qui reçoit le message. Pour plus d’informations sur le traitement de ce message, consultez la section Remarques.

lParam

Utilisez le code suivant pour obtenir les informations contenues dans le paramètre lParam.

cmd  = GET_APPCOMMAND_LPARAM(lParam);

uDevice = GET_DEVICE_LPARAM(lParam);

dwKeys = GET_KEYSTATE_LPARAM(lParam);

La commande d’application est cmd, qui peut être l’une des valeurs suivantes.

Valeur Signification
APPCOMMAND_BASS_BOOST
20
Activer et désactiver la basse.
APPCOMMAND_BASS_DOWN
19
Diminuer les basses.
APPCOMMAND_BASS_UP
21
Augmenter les basses.
APPCOMMAND_BROWSER_BACKWARD
1
Naviguer vers l’arrière.
APPCOMMAND_BROWSER_FAVORITES
6
Ouvrir les favoris.
APPCOMMAND_BROWSER_FORWARD
2
Naviguer vers l’avant.
APPCOMMAND_BROWSER_HOME
7
Accéder à la page d’accueil.
APPCOMMAND_BROWSER_REFRESH
3
Actualiser la page.
APPCOMMAND_BROWSER_SEARCH
5
Ouvrir la recherche.
APPCOMMAND_BROWSER_STOP
4
Arrêter le téléchargement.
APPCOMMAND_CLOSE
31
Fermer la fenêtre (pas l’application).
APPCOMMAND_COPY
36
Copier la sélection.
APPCOMMAND_CORRECTION_LIST
45
Affiche la liste de correction lorsqu’un mot est incorrectement identifié lors de la saisie vocale.
APPCOMMAND_CUT
37
Couper la sélection.
APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE
43
Bascule entre deux modes d’entrée vocale : la dictée et la commande/contrôle (en donnant des commandes à une application ou en accédant aux menus).
APPCOMMAND_FIND
28
Ouvrir la boîte de dialogue Rechercher.
APPCOMMAND_FORWARD_MAIL
40
Transférer un message électronique.
APPCOMMAND_HELP
27
Ouvrir la boîte de dialogue Aide.
APPCOMMAND_LAUNCH_APP1
17
Démarrer App1.
APPCOMMAND_LAUNCH_APP2
18
Démarrer App2.
APPCOMMAND_LAUNCH_MAIL
15
Ouvrir le courrier.
APPCOMMAND_LAUNCH_MEDIA_SELECT
16
Accéder au mode de sélection multimédia.
APPCOMMAND_MEDIA_CHANNEL_DOWN
52
Décrémenter la valeur du canal, par exemple pour une TV ou une radio.
APPCOMMAND_MEDIA_CHANNEL_UP
51
Incrémenter la valeur du canal, par exemple pour une TV ou une radio.
APPCOMMAND_MEDIA_FAST_FORWARD
49
Augmenter la vitesse de lecture de flux. Cela peut être implémenté de plusieurs façons, par exemple, à l’aide d’une vitesse fixe ou d’un basculement à travers une série de vitesses croissantes.
APPCOMMAND_MEDIA_NEXTTRACK
11
Passer à la piste suivante.
APPCOMMAND_MEDIA_PAUSE
47
Suspendre. S’il est déjà en pause, ne faites rien. Il s’agit d’une commande PAUSE directe qui n’a pas d’état. S’il existe des boutons lecture et pause discrets, les applications doivent agir sur cette commande, ainsi que sur APPCOMMAND_MEDIA_PLAY_PAUSE.
APPCOMMAND_MEDIA_PLAY
46
Commencer à jouer à la position actuelle. S’il est déjà en pause, il reprendra. Il s’agit d’une commande PLAY directe qui n’a aucun état. S’il existe des boutons lecture et pause discrets, les applications doivent agir sur cette commande ainsi que sur APPCOMMAND_MEDIA_PLAY_PAUSE.
APPCOMMAND_MEDIA_PLAY_PAUSE
14
Lire ou suspendre la lecture. S’il existe des boutons lecture et pause distincts, les applications doivent agir sur cette commande, ainsi que sur APPCOMMAND_MEDIA_PLAY et APPCOMMAND_MEDIA_PAUSE.
APPCOMMAND_MEDIA_PREVIOUSTRACK
12
Accéder à la piste précédente.
APPCOMMAND_MEDIA_RECORD
48
Commencer à enregistrer le flux actuel.
APPCOMMAND_MEDIA_REWIND
50
Reculer dans un flux à une vitesse plus élevée. Cela peut être implémenté de plusieurs façons, par exemple, à l’aide d’une vitesse fixe ou d’un basculement à travers une série de vitesses croissantes.
APPCOMMAND_MEDIA_STOP
13
Arrêter la lecture.
APPCOMMAND_MIC_ON_OFF_TOGGLE
44
Activer/désactiver le microphone.
APPCOMMAND_MICROPHONE_VOLUME_DOWN
25
Réduire le volume du microphone.
APPCOMMAND_MICROPHONE_VOLUME_MUTE
24
Désactiver le microphone.
APPCOMMAND_MICROPHONE_VOLUME_UP
26
Augmenter le volume du micro.
APPCOMMAND_NEW
29
Créer une fenêtre.
APPCOMMAND_OPEN
30
Ouvrir une fenêtre.
APPCOMMAND_PASTE
38
Coller
APPCOMMAND_PRINT
33
Imprimer le document en cours.
APPCOMMAND_REDO
35
Rétablir la dernière action.
APPCOMMAND_REPLY_TO_MAIL
39
Répondre à un e-mail.
APPCOMMAND_SAVE
32
Enregistrer le document actif.
APPCOMMAND_SEND_MAIL
41
Envoyer un e-mail.
APPCOMMAND_SPELL_CHECK
42
Lancer un correcteur orthographique.
APPCOMMAND_TREBLE_DOWN
22
Réduire les aigus.
APPCOMMAND_TREBLE_UP
23
Augmenter les aigus.
APPCOMMAND_UNDO
34
Annuler la dernière action.
APPCOMMAND_VOLUME_DOWN
9
Réduire le volume.
APPCOMMAND_VOLUME_MUTE
8
Désactiver le son.
APPCOMMAND_VOLUME_UP
10
Augmenter le volume.

Le composant uDevice indique le périphérique d’entrée qui a généré l’événement d’entrée et peut être l’une des valeurs suivantes.

Valeur Signification
FAPPCOMMAND_KEY
0
L’utilisateur a appuyé sur une touche.
FAPPCOMMAND_MOUSE
0x8000
L’utilisateur a cliqué sur un bouton de la souris.
FAPPCOMMAND_OEM
0x1000
Une source matérielle non identifiée a généré l’événement. Il peut s’agir d’un événement de souris ou de clavier.

Le composant dwKeys indique si différentes touches virtuelles sont en panne et peuvent être une ou plusieurs des valeurs suivantes.

Valeur Signification
MK_CONTROL
0x0008
La touche CTRL est enfoncée.
MK_LBUTTON
0x0001
Le bouton gauche de la souris est enfoncé.
MK_MBUTTON
0x0010
Le bouton central de la souris est enfoncé.
MK_RBUTTON
0x0002
Le bouton droit de la souris est enfoncé.
MK_SHIFT
0x0004
La touche MAJ est enfoncée.
MK_XBUTTON1
0x0020
Le premier bouton X est enfoncé.
MK_XBUTTON2
0x0040
Le deuxième bouton X est enfoncé.

Valeur retournée

Si une application traite ce message, elle doit retourner TRUE. Pour plus d’informations sur le traitement de la valeur de retour, consultez la section Remarques.

Notes

DefWindowProc génère le message WM_APPCOMMAND lorsqu’il traite le message WM_XBUTTONUP ou WM_NCXBUTTONUP, ou lorsque l’utilisateur tape une touche de commande d’application.

Si une fenêtre enfant ne traite pas ce message et appelle à la place DefWindowProc, DefWindowProc envoie le message à sa fenêtre parente. Si une fenêtre de niveau supérieur ne traite pas ce message et appelle à la place DefWindowProc, DefWindowProc appelle un hook d’interpréteur de commandes, le code de hook étant égal à HSHELL_APPCOMMAND.

Pour obtenir les coordonnées du curseur si le message a été généré par un clic de souris, l’application peut appeler GetMessagePos. Une application peut tester si le message a été généré par la souris en vérifiant si lParam contient FAPPCOMMAND_MOUSE.

Contrairement aux autres messages Windows, une application doit retourner TRUE à partir de ce message si elle le traite. Cela permet aux logiciels qui simulent ce message sur les systèmes Windows antérieurs à Windows 2000 de déterminer si la procédure de fenêtrage a traité le message ou appelé DefWindowProc pour le traiter.

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Winuser.h (y compris Windows.h)

Voir aussi

Référence

DefWindowProc

GET_APPCOMMAND_LPARAM

GET_DEVICE_LPARAM

GET_KEYSTATE_LPARAM

ShellProc

WM_XBUTTONUP

WM_NCXBUTTONUP

Conceptuel

Entrées de la souris