Compartilhar via


CView::OnUpdate

Chamado pela estrutura após o documento de exibição foi alterado; essa função é chamada por CDocument::UpdateAllViews e permite que a exibição atualize a exibição para refletir as alterações.

virtual void OnUpdate(
   CView* pSender,
   LPARAM lHint,
   CObject* pHint 
);

Parâmetros

  • pSender
    Aponta para o modo que alterou o documento, ou NULO se todas as visualizações devem ser atualizadas.

  • lHint
    Contém informações sobre as alterações.

  • pHint
    Aponta para um objeto que armazena informações sobre as alterações.

Comentários

Também é chamado pela implementação padrão de OnInitialUpdate.A implementação padrão invalida toda a área cliente, marcar um para pintar quando a seguinte mensagem de WM_PAINT é recebida.Substituir essa função se você deseja atualizar somente as áreas que mapeiam as partes alteradas do documento.Para fazê-lo você deve passar informações sobre as alterações usando os parâmetros de dica.

Para usar lHint, defina valores especiais de dica, geralmente uma máscara de bits ou um tipo enumerado, e a ter uma passagem de documento de esses valores.Para usar pHint, derive uma classe de dica de CObject e fazer o documento passar um ponteiro para um objeto de dica; ao substituir OnUpdate, use a função de membro de CObject::IsKindOf para determinar o tipo de tempo de execução do objeto de dica.

Normalmente você não deve executar qualquer desenhar diretamente de OnUpdate.Em vez de isso, determine o retângulo que descreve, em coordenadas de dispositivo, a área que requer atualizar; passar este retângulo a CWnd::InvalidateRect.Isso faz com que a pintura ocorra a próxima vez que uma mensagem de WM_PAINT é recebida.

Se lHint é 0 e pHint é NULO, o documento envia uma notificação genérica de atualização.Se uma exibição receber uma notificação genérica de atualização, ou se não puderem decodificar dicas, deve invalidar sua área inteira de cliente.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe de CView

Gráfico de hierarquia

CDocument::UpdateAllViews

CView::OnInitialUpdate

CWnd::Invalidate

CWnd::InvalidateRect