Compartilhar via


Método IOleInPlaceFrame::SetStatusText (oleidl.h)

Define e exibe status texto sobre o objeto in-loco na janela de quadro do contêiner status linha.

Sintaxe

HRESULT SetStatusText(
  [in] LPCOLESTR pszStatusText
);

Parâmetros

[in] pszStatusText

A mensagem a ser exibida.

Retornar valor

Esse método retorna S_OK em caso de êxito. Outros valores retornados possíveis incluem o seguinte.

Código de retorno Descrição
S_TRUNCATED
Alguns textos foram exibidos, mas a mensagem foi muito longa e truncada.
E_FAIL
Falha na operação.
E_INVALIDARG
O ponteiro especificado é inválido.
E_UNEXPECTED
Erro inesperado.

Comentários

Anotações aos Chamadores

Você deve chamar IOleInPlaceFrame::SetStatusText quando precisar pedir ao contêiner para exibir o texto do objeto na linha status do quadro, se ele tiver um. Como a janela de quadro do contêiner possui a linha status, chamar IOleInPlaceFrame::SetStatusText é a única maneira de um objeto exibir status informações na janela de quadros do contêiner. Se o contêiner recusar a solicitação do objeto, o aplicativo de objeto poderá, no entanto, negociar por espaço na borda para exibir sua própria janela status.

Ao alternar entre menus pertencentes ao contêiner e ao objeto ativo in-loco, o texto da barra de status não será refletido corretamente se o objeto não chamar o método IOleInPlaceFrame::SetStatusText do contêiner. Por exemplo, se, durante uma sessão in-loco, o usuário selecionasse o menu Arquivo, a barra de status refletiria a ação que ocorreria se o usuário selecionasse esse menu. Se o usuário selecionar o menu Editar (que pertence ao objeto in-loco), o texto da barra de status não será alterado, a menos que iOleInPlaceFrame::SetStatusText tenha sido chamado. Isso ocorre porque não há como o contêiner reconhecer que um dos menus do objeto ficou ativo porque todas as mensagens que o contêiner interceptaria agora estão indo para o objeto .

Observações aos implementadores

Para evitar possíveis problemas, todos os objetos que estão sendo ativados no local devem processar a mensagem WM_MENUSELECT e chamar IOleInPlaceFrame::SetStatusText, mesmo que o objeto geralmente não forneça informações de status (nesse caso, o objeto pode apenas passar uma cadeia de caracteres NULL para o texto status solicitado).
Nota Ao executar IOleInPlaceFrame::SetStatusText, não faça chamadas para as funções PeekMessage ou GetMessage ou uma caixa de diálogo. Isso pode fazer com que o sistema fique em deadlock. Há mais restrições sobre quais métodos e funções de interface OLE podem ser chamados de dentro de IOleInPlaceUIWindow::GetBorder.
 

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

Confira também

GetMessage

Ioleinplaceframe

PeekMessage