Método IOleInPlaceSiteWindowless::SetFocus (ocidl.h)
Define o foco do teclado para um objeto ativo da interface do usuário e sem janelas.
Sintaxe
HRESULT SetFocus(
[in] BOOL fFocus
);
Parâmetros
[in] fFocus
Se TRUE, define o foco do teclado para o objeto de chamada. Se FALSE, remove o foco do teclado do objeto de chamada, desde que o objeto tenha o foco.
Valor retornado
Esse método retornará S_OK se o foco do teclado tiver sido fornecido com êxito ao objeto. Se esse método for chamado para liberar o foco, ele nunca deverá falhar. Outros valores retornados possíveis incluem o seguinte.
Código de retorno | Descrição |
---|---|
|
O foco do teclado foi negado ao objeto . |
Comentários
Um objeto sem janelas chama esse método sempre que um objeto em janelas chama a função SetFocus . Por meio dessa chamada, o objeto sem janelas obtém o foco do teclado e pode responder a mensagens de janela. Normalmente, essa chamada é feita durante o processo de ativação da interface do usuário e dentro dos métodos de notificação IOleInPlaceActiveObject::OnDocWindowActivate com TRUE e IOleInPlaceActiveObject::OnFrameWindowActivate com TRUE.
Em resposta a essa chamada, o contêiner define o foco do Windows como a janela que está sendo usada para obter mensagens de teclado (geralmente a janela do contêiner) e redireciona todas as mensagens de teclado subsequentes para o objeto sem janelas que solicitou o foco.
Um objeto sem janelas também chama o método IOleInPlaceSiteWindowless::SetFocus com o parâmetro fFocus definido como FALSE para liberar o foco do teclado sem atribuí-lo a nenhum outro objeto. Nesse caso, o contêiner deve chamar a função SetFocus com um parâmetro NULL para que nenhuma janela tenha o foco.
Requisitos
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 | ocidl.h |