Partager via


Méthode IOleControlSite ::TranslateAccelerator (ocidl.h)

Transmet une séquence de touches au site de contrôle pour traitement.

Syntaxe

HRESULT TranslateAccelerator(
  [in] MSG   *pMsg,
  [in] DWORD grfModifiers
);

Paramètres

[in] pMsg

Pointeur vers la structure MSG décrivant la séquence de touches à traiter.

[in] grfModifiers

Indicateurs décrivant l’état des touches Ctrl, Alt et Maj. La valeur de l’indicateur peut être n’importe quelle valeur d’énumération KEYMODIFIERS valide.

Valeur retournée

Cette méthode peut retourner les valeurs suivantes.

Code de retour Description
S_OK
Le conteneur a traité le message.
S_FALSE
Le conteneur n’a pas traiter le message. Cette valeur doit également être retournée dans tous les autres cas d’erreur, en plus de E_NOTIMPL.
E_NOTIMPL
Le conteneur n’implémente pas la prise en charge de l’accélérateur.

Remarques

Cette méthode est appelée par un contrôle qui peut être actif dans l’interface utilisateur. Dans ce cas, un contrôle peut traiter toutes les séquences de touches d’abord via IOleInPlaceActiveObject ::TranslateAccelerator, selon les règles normales du document composé OLE. Dans cette méthode, le contrôle peut donner au conteneur certains messages à traiter en premier en appelant IOleControlSite ::TranslateAccelerator et en utilisant la valeur de retour pour déterminer si un traitement a eu lieu. Sinon, le contrôle traite toujours le message en premier. Si le contrôle n’utilise pas la séquence de touches comme accélérateur, il transmet la séquence de touches au conteneur via cette méthode.

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]
Plateforme cible Windows
En-tête ocidl.h

Voir aussi

IOleControlSite

IOleInPlaceActiveObject ::TranslateAccelerator