Função OleTranslateAccelerator (ole2.h)
Chamado pelo aplicativo de objeto, permite que o contêiner de um objeto traduza aceleradores de acordo com a tabela de aceleradores do contêiner.
Sintaxe
HRESULT OleTranslateAccelerator(
[in] LPOLEINPLACEFRAME lpFrame,
[in] LPOLEINPLACEFRAMEINFO lpFrameInfo,
[in] LPMSG lpmsg
);
Parâmetros
[in] lpFrame
Ponteiro para a interface IOleInPlaceFrame para a qual o pressionamento de teclas pode ser enviado.
[in] lpFrameInfo
Ponteiro para uma estrutura OLEINPLACEFRAMEINFO que contém a tabela de aceleradores obtida do contêiner.
[in] lpmsg
Ponteiro para uma estrutura MSG que contém o pressionamento de teclas.
Retornar valor
Essa função retorna S_OK em caso de êxito. Outros valores possíveis incluem o seguinte.
Código de retorno | Descrição |
---|---|
|
O objeto deve continuar processando essa mensagem. |
Comentários
Os servidores de objetos chamam OleTranslateAccelerator para permitir que o contêiner do objeto traduza pressionamentos de teclas de acelerador de acordo com a tabela de aceleradores do contêiner, apontada por lpFrameInfo. Embora um objeto independente seja o objeto ativo, o servidor do objeto sempre tem a primeira chance de traduzir todas as mensagens recebidas. Se isso não for desejado, o servidor chamará OleTranslateAccelerator para dar uma chance ao contêiner do objeto. Se a entrada do teclado corresponder a um acelerador encontrado na tabela de aceleradores fornecida pelo contêiner, OleTranslateAccelerator passará a mensagem e seu identificador de comando para o contêiner por meio do método IOleInPlaceFrame::TranslateAccelerator . Esse método retornará S_OK se o pressionamento de tecla for consumido; caso contrário, retornará S_FALSE.
As tabelas de aceleradores para contêineres devem ser definidas para que funcionem corretamente com aplicativos de objeto que fazem suas próprias traduções de pressionamento de teclas de acelerador. Essas tabelas devem assumir o formato:
"char", wID, VIRTKEY, CONTROL
Essa é a maneira mais comum de descrever aceleradores de teclado. Não fazer isso pode fazer com que os pressionamentos de tecla sejam perdidos ou enviados para o objeto errado durante uma sessão in-loco.
Os objetos podem chamar a função IsAccelerator para ver se o pressionamento de tecla do acelerador pertence ao objeto ou ao contêiner.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | ole2.h |
Biblioteca | Ole32.lib |
DLL | Ole32.dll |
Conjunto de APIs | ext-ms-win-com-ole32-l1-1-3 (introduzido no Windows 10, versão 10.0.10240) |