Método IOleInPlaceActiveObject::TranslateAccelerator (oleidl.h)
Processa mensagens de tecla de acelerador de menu da fila de mensagens do contêiner. Esse método só deve ser usado para objetos criados por um aplicativo de objeto DLL.
Sintaxe
HRESULT TranslateAccelerator(
[in] LPMSG lpmsg
);
Parâmetros
[in] lpmsg
Um ponteiro para uma estrutura MSG para a mensagem que pode precisar ser traduzida.
Retornar valor
Esse método retorna S_OK com êxito. Outros valores retornados possíveis incluem o seguinte.
Código de retorno | Descrição |
---|---|
|
A mensagem não foi traduzida. |
|
Os valores de parâmetro especificados não são válidos. |
|
Não há memória suficiente disponível para a operação. |
|
Ocorreu um erro inesperado. |
Comentários
Anotações para chamadores
Objetos in-loco ativos sempre devem ter a primeira chance de traduzir pressionamentos de teclas de acelerador. Você pode fornecer essa oportunidade chamando IOleInPlaceActiveObject::TranslateAccelerator do loop de mensagem do contêiner antes de fazer qualquer outra tradução. Você deve aplicar sua própria tradução somente quando esse método retornar S_FALSE.Se você chamar IOleInPlaceActiveObject::TranslateAccelerator para um objeto que não é criado por um aplicativo de objeto DLL, o manipulador de objetos padrão retornará S_FALSE.
Anotações aos implementadores
Um objeto criado por um aplicativo de objeto EXE obtém pressionamentos de tecla de sua própria bomba de mensagem, para que o contêiner não receba essas mensagens.Se você precisar implementar esse método, poderá fazer isso simplesmente encapsulando a chamada para a função TranslateAccelerator .
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 | oleidl.h |