Función OleTranslateAccelerator (ole2.h)
Llamado por la aplicación de objeto, permite que el contenedor de un objeto traduzca aceleradores según la tabla de aceleradores del contenedor.
Sintaxis
HRESULT OleTranslateAccelerator(
[in] LPOLEINPLACEFRAME lpFrame,
[in] LPOLEINPLACEFRAMEINFO lpFrameInfo,
[in] LPMSG lpmsg
);
Parámetros
[in] lpFrame
Puntero a la interfaz IOleInPlaceFrame a la que se puede enviar la pulsación de tecla.
[in] lpFrameInfo
Puntero a una estructura OLEINPLACEFRAMEINFO que contiene la tabla de aceleradores obtenida del contenedor.
[in] lpmsg
Puntero a una estructura MSG que contiene la pulsación de tecla.
Valor devuelto
Esta función devuelve S_OK si se ejecuta correctamente. Otros valores posibles incluyen lo siguiente.
Código devuelto | Descripción |
---|---|
|
El objeto debe continuar procesando este mensaje. |
Comentarios
Los servidores de objetos llaman a OleTranslateAccelerator para permitir que el contenedor del objeto traduzca pulsaciones de tecla del acelerador según la tabla de aceleración del contenedor, a la que apunta lpFrameInfo. Aunque un objeto contenido es el objeto activo, el servidor del objeto siempre tiene la primera oportunidad de traducir los mensajes recibidos. Si no se desea, el servidor llama a OleTranslateAccelerator para dar al contenedor del objeto una oportunidad. Si la entrada del teclado coincide con un acelerador encontrado en la tabla de aceleradores proporcionada por el contenedor, OleTranslateAccelerator pasa el mensaje y su identificador de comando al contenedor a través del método IOleInPlaceFrame::TranslateAccelerator . Este método devuelve S_OK si se consume la pulsación de tecla; de lo contrario, devuelve S_FALSE.
Las tablas aceleradoras de contenedores deben definirse para que funcionen correctamente con las aplicaciones de objetos que realizan sus propias traducciones de pulsación de tecla de acelerador. Estas tablas deben tener la forma:
"char", wID, VIRTKEY, CONTROL
Esta es la forma más común de describir los aceleradores de teclado. Si no lo hace, es posible que se pierdan o envíen pulsaciones de tecla al objeto incorrecto durante una sesión local.
Los objetos pueden llamar a la función IsAccelerator para ver si la pulsación de tecla del acelerador pertenece al objeto o al contenedor.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | ole2.h |
Library | Ole32.lib |
Archivo DLL | Ole32.dll |
Conjunto de API | ext-ms-win-com-ole32-l1-1-3 (introducido en Windows 10, versión 10.0.10240) |