Contêineres: Cliente-Item notificações
Este artigo discute as funções substituíveis que a estrutura do MFC chama quando aplicativos de servidor modifiquem itens no documento do aplicativo do cliente.
COleClientItem define várias funções substituíveis que são chamadas em resposta às solicitações do aplicativo de componente, também chamado de aplicativo de servidor.Esses overridables normalmente funcionam como notificações.Eles informam o aplicativo de contêiner de vários eventos, como rolagem, ativação, ou uma alteração de posição e de alterações que o usuário faz ao editar ou manipular o item.
A estrutura notifica o aplicativo de contêiner de alterações por meio de uma chamada para COleClientItem::OnChange, uma função substituível cuja implementação é necessária.Esta função protegida recebe dois argumentos.O primeiro Especifica o motivo pelo qual que o servidor alterado o item:
Notificação |
Significado |
---|---|
OLE_CHANGED |
Aparência do item OLE foi alterado. |
OLE_SAVED |
O item OLE foi salvo. |
OLE_CLOSED |
O item OLE foi fechado. |
OLE_RENAMED |
O documento de servidor que contém o item OLE foi renomeado. |
OLE_CHANGED_STATE |
O item OLE foi alterado de um estado para outro. |
OLE_CHANGED_ASPECT |
Aspecto de desenho do item OLE foi alterado pela estrutura. |
Esses valores são a partir de OLE_NOTIFICATION enumeração, que é definida em AFXOLE.H.
O segundo argumento para esta função especifica como o item foi alterado ou qual estado que ele entrou:
Quando o primeiro argumento é |
Segundo argumento |
---|---|
OLE_SAVEDouOLE_CLOSED |
Não é usado. |
OLE_CHANGED |
Especifica o aspecto do item OLE foi alterado. |
OLE_CHANGED_STATE |
Descreve o estado que está sendo inserido (emptyState, loadedState, openState, activeState, ou activeUIState). |
Para obter mais informações sobre os estados que um item do cliente pode assumir, consulte contêineres: cliente-Item estados.
O framework chama COleClientItem::OnGetItemPosition quando um item é ativado para edição no local.A implementação é necessária para aplicativos que oferecem suporte a edição in-loco.O Assistente de aplicativo do MFC fornece uma implementação básica, atribui as coordenadas do item para o CRect objeto é passado como um argumento para OnGetItemPosition.
Se o tamanho ou a posição de um item OLE é alterado durante a edição in-loco, informações do contêiner sobre posição e retângulos de recorte do item devem ser atualizadas e o servidor deve receber informações sobre as alterações.O framework chama COleClientItem::OnChangeItemPosition para essa finalidade.O Assistente de aplicativo do MFC fornece uma substituição que chama a função da classe base.Você deve editar a função que o Assistente de aplicativo grava para seu COleClientItem-classe derivada para que a função atualiza quaisquer informações mantidas pelo seu objeto de item do cliente.
Consulte também
Referência
COleClientItem::OnChangeItemPosition