CView::OnPreparePrinting
Chamado pela estrutura antes que um documento é impresso ou visualizado.
virtual BOOL OnPreparePrinting(
CPrintInfo* pInfo
);
Parâmetros
- pInfo
Os pontos a CPrintInfo estrutura que descreve o trabalho de impressão atual.
Valor de retorno
Diferente de zero para iniciar a impressão; 0 se o trabalho de impressão foram canceladas.
Comentários
A implementação padrão não fará nada.
Você deve substituir essa função para ativar a impressão e a visualização de impressão. Chame a função de membro de DoPreparePrinting , passando o parâmetro de pInfo , e depois retorne seu valor de retorno; DoPreparePrinting exibe a caixa de diálogo de impressão e cria um contexto de dispositivos de impressão. Se você deseja inicializar a caixa de diálogo de impressão com valores diferentes de opções, atribuir valores aos membros de pInfo. Por exemplo, se você souber o comprimento do documento, passar o valor à função de membro de SetMaxPage de pInfo antes de chamar DoPreparePrinting. Esse valor é exibido no: a caixa na parte do intervalo de diálogo de impressão.
DoPreparePrinting não exibe a caixa de diálogo de impressão para um trabalho de visualização. Se você desejar ignorar a caixa de diálogo de impressão para um trabalho de impressão, verifique que o membro de m_bPreview de pInfo é Falso e defina à Verdadeiro antes de passar a DoPreparePrinting; redefinir-lo a Falso mais tarde.
Se você precisar executar as inicializações que exigem acesso ao objeto de CDC que representa o contexto do dispositivo de impressora (por exemplo, se você precisar saber o tamanho da página antes de especificar o tamanho do documento), substitua a função de membro de OnBeginPrinting .
Se você desejar definir o valor de membros de m_nNumPreviewPages ou de m_strPageDesc de parâmetro de pInfo , faça isso após chamar DoPreparePrinting. A função de membro de DoPreparePrinting define m_nNumPreviewPages para o valor encontrado no arquivo .ini do aplicativo e defina m_strPageDesc ao seu valor padrão.
Exemplo
Substitua OnPreparePrinting e chamar DoPreparePrinting de substituição para que a estrutura exibe uma caixa de diálogo e criar uma C.C. de impressão para você.
BOOL CMyEditView::OnPreparePrinting(CPrintInfo* pInfo)
{
return CEditView::DoPreparePrinting(pInfo);
}
Se você souber quantas páginas o documento contém, defina a página máximo em OnPreparePrinting antes de chamar DoPreparePrinting. A estrutura exibirá o número máximo de página em “” na caixa de diálogo de impressão.
BOOL CExampleView::OnPreparePrinting(CPrintInfo* pInfo)
{
//The document has 2 pages.
pInfo->SetMaxPage(2);
return CView::DoPreparePrinting(pInfo);
}
Requisitos
Cabeçalho: afxwin.h