CWnd::OnSysCommand
L'infrastructure appelle cette fonction membre lorsque l'utilisateur sélectionne une commande de menu de contrôle, ou lorsque l'utilisateur sélectionne l'optimiser le bouton ou de réduction.
afx_msg void OnSysCommand(
UINT nID,
LPARAM lParam
);
Paramètres
nID
Spécifie le type de système demandé.Ce paramètre peut être l'une des valeurs suivantes :Fin deSC_CLOSE l'objet d' CWnd .
SC_HOTKEY activer l'objet d' CWnd associé à la touche d'accès rapide application spécifiée.Le mot de poids faible d' lParam identifie HWND de la fenêtre pour activer.
Défilement deSC_HSCROLL horizontalement.
SC_KEYMENU récupèrent un menu via une séquence de touches.
SC_MAXIMIZE (ou) SC_ZOOMagrandissent l'objet d' CWnd .
SC_MINIMIZE (ou) SC_ICONréduisent l'objet d' CWnd .
SC_MOUSEMENU récupèrent un menu à un clic de souris.
Déplacement deSC_MOVE l'objet d' CWnd .
Déplacement deSC_NEXTWINDOW dans la fenêtre suivante.
Déplacement deSC_PREVWINDOW à la fenêtre précédente.
Fenêtre de restauration deSC_RESTORE à la position normale et la taille.
SC_SCREENSAVE exécute l'application à - économiseur d'écran spécifiée dans la section [] démarrage du fichier de SYSTEM.INI.
Taille deSC_SIZE l'objet d' CWnd .
SC_TASKLIST exécutent ou activer l'application du gestionnaire des tâches de windows.
Défilement deSC_VSCROLL verticalement.
lParam
Si une commande de menu contrôle est sélectionné avec la souris, lParam contient les coordonnées du curseur.Le mot de poids faible contient x, et le mot de poids fort contient y.Si ce paramètre n'est pas utilisé.SC_HOTKEY activent la fenêtre associée à la touche d'accès rapide application spécifiée.Le mot de poids faible d' lParam identifie la fenêtre pour activer.
SC_SCREENSAVE exécutent l'application écran d'enregistrement spécifiée dans la section de bureau du panneau de configuration.
Notes
Par défaut, OnSysCommand effectue la demande de contrôle menu d'actions prédéfinies spécifiées dans le tableau précédent.
Dans les messages d' WM_SYSCOMMAND , les quatre bits de poids faible du paramètre d' nID sont utilisés en interne par windows.Lorsqu'une application teste la valeur d' nID, elle doit associer la valeur 0xFFF0 avec la valeur d' nID à l'aide de l'opérateur de bits AND pour obtenir le résultat correct.
Les éléments de menu dans un menu de contrôle peuvent être modifiés avec GetSystemMenu, AppendMenu, InsertMenules fonctions membres, et d' ModifyMenu .Les applications qui modifient le menu de contrôle doivent traiter les messages d' WM_SYSCOMMAND , et tous les messages d' WM_SYSCOMMAND non gérés par l'application doivent être passées en fonction de OnSysCommand.Toutes les valeurs de commande ajoutées par une application doivent être gérées par l'application et ne peuvent pas être passées à OnSysCommand.
Une application peut effectuer toute commande du système à tout moment en passant un message d' WM_SYSCOMMAND à OnSysCommand.
Les séquences de touches d'accélérateur (raccourci) définies pour sélectionner des éléments dans le menu de contrôle sont traduites en appels d' OnSysCommand ; toutes les autres séquences de touches d'accélérateur sont traduites en messages de WM_COMMAND .
[!REMARQUE]
Cette fonction membre est appelée par l'infrastructure pour permettre à votre application de gérer un message de fenêtre.Les paramètres sont passés à la fonction reflètent les paramètres acceptés par l'infrastructure lorsque le message a été accepté.Si vous appelez l'implémentation de la classe de base de cette fonction, cette implémentation utilise les paramètres initialement passés avec le message et non les paramètres que vous fournissez à la fonction.
Configuration requise
Header: afxwin.h