Estrutura CPrintInfo
Armazena informações sobre um trabalho de impressão ou pré-visualização de impressão.
Sintaxe
struct CPrintInfo
Membros
Métodos públicos
Nome | Descrição |
---|---|
CPrintInfo::GetFromPage | O número de página da primeira página a ser impressa. |
CPrintInfo::GetMaxPage | Retorna o número da última página do documento. |
CPrintInfo::GetMinPage | Retorna o número da primeira página do documento. |
CPrintInfo::GetOffsetPage | Retorna o número das páginas anteriores à primeira página de um item DocObject que está sendo impresso em um trabalho de impressão DocObject combinado. |
CPrintInfo::GetToPage | Retorna o número da última página que está sendo impressa. |
CPrintInfo::SetMaxPage | Define o número da última página do documento. |
CPrintInfo::SetMinPage | Define o número da primeira página do documento. |
Membros de Dados Públicos
Nome | Descrição |
---|---|
CPrintInfo::m_bContinuePrinting | Contém um sinalizador que indica se a estrutura deve continuar o loop de impressão. |
CPrintInfo::m_bDirect | Contém um sinalizador que indica se o documento está sendo impresso diretamente (sem exibir a caixa de diálogo Imprimir). |
CPrintInfo::m_bDocObject | Contém um sinalizador que indica se o documento que está sendo impresso é um DocObject. |
CPrintInfo::m_bPreview | Contém um sinalizador que indica se o documento está sendo pré-visualizado. |
CPrintInfo::m_dwFlags | Especifica operações de impressão DocObject. |
CPrintInfo::m_lpUserData | Retorna um ponteiro para uma estrutura criada pelo usuário. |
CPrintInfo::m_nCurPage | Identifica o número da página que está sendo impressa. |
CPrintInfo::m_nJobNumber | Especifica o número do trabalho atribuído pelo sistema operacional para o trabalho de impressão atual |
CPrintInfo::m_nNumPreviewPages | Identifica o número de páginas exibidas na janela de pré-visualização; 1 ou 2. |
CPrintInfo::m_nOffsetPage | Especifica o deslocamento da primeira página de um DocObject específico em um trabalho de impressão docObject combinado. |
CPrintInfo::m_pPD | Contém um ponteiro para o objeto CPrintDialog usado para a caixa de diálogo Imprimir. |
CPrintInfo::m_rectDraw | Especifica um retângulo que define a área de página utilizável atual. |
CPrintInfo::m_strPageDesc | Contém uma cadeia de caracteres de formato para exibição de número de página. |
Comentários
CPrintInfo
é uma estrutura e não tem uma classe base.
A estrutura cria um objeto de CPrintInfo
sempre que o comando Print ou Print Preview é escolhido e o destrói quando o comando é concluído.
CPrintInfo
contém informações sobre o trabalho de impressão como um todo, como o intervalo de páginas a serem impressas e o status atual do trabalho de impressão, como a página que está sendo impressa no momento. Algumas informações são armazenadas em um objeto CPrintDialog associado; esse objeto contém os valores inseridos pelo usuário na caixa de diálogo Imprimir.
Um objeto CPrintInfo
é passado entre a estrutura e a classe de exibição durante o processo de impressão e é usado para trocar informações entre os dois. Por exemplo, a estrutura informa à classe view qual página do documento imprimir atribuindo um valor ao membro m_nCurPage
de CPrintInfo
; a classe view recupera o valor e executa a impressão real da página especificada.
Outro exemplo é o caso em que o comprimento do documento não é conhecido até que ele seja impresso. Nessa situação, a classe de exibição testa o final do documento sempre que uma página é impressa. Quando o final é atingido, a classe de exibição define o membro m_bContinuePrinting
de CPrintInfo
como FALSE; isso informa a estrutura para interromper o loop de impressão.
CPrintInfo
é usado pelas funções de membro de CView
listadas em "Ver também". Para mais informações sobre a arquitetura de impressão fornecida pela biblioteca Microsoft Foundation Class, confira Janelas de Quadro e Arquitetura de Documento/Exibição e os artigos Como imprimir e Como imprimir: documentos de várias páginas.
Hierarquia de herança
CPrintInfo
Requisitos
Cabeçalho: afxext.h
CPrintInfo::GetFromPage
Chame essa função para recuperar o número da primeira página a ser impressa.
UINT GetFromPage() const;
Valor de retorno
O número da primeira página a ser impressa.
Comentários
Esse é o valor especificado pelo usuário na caixa de diálogo Imprimir e é armazenado no objeto CPrintDialog
referenciado pelo membro m_pPD
. Se o usuário não tiver especificado um valor, o padrão será a primeira página do documento.
CPrintInfo::GetMaxPage
Chame essa função para recuperar o número da última página do documento.
UINT GetMaxPage() const;
Valor de retorno
O número da última página do documento.
Comentários
Esse valor é armazenado no objeto CPrintDialog
referenciado pelo membro m_pPD
.
CPrintInfo::GetMinPage
Chame essa função para recuperar o número da primeira página do documento.
UINT GetMinPage() const;
Valor de retorno
O número da primeira página do documento.
Comentários
Esse valor é armazenado no objeto CPrintDialog
referenciado pelo membro m_pPD
.
CPrintInfo::GetOffsetPage
Chame essa função para recuperar o deslocamento ao imprimir vários itens DocObject de um cliente DocObject.
UINT GetOffsetPage() const;
Valor de retorno
O número das páginas anteriores à primeira página de um item DocObject que está sendo impresso em um trabalho de impressão DocObject combinado.
Comentários
Esse valor é referenciado pelo membro m_nOffsetPage
. A primeira página do documento será numerada como o valor m_nOffsetPage
+ 1 quando impressa como um DocObject com outros documentos ativos. O membro m_nOffsetPage
só será válido se o valor m_bDocObject
for TRUE.
CPrintInfo::GetToPage
Chame essa função para recuperar o número da última página a ser impressa.
UINT GetToPage() const;
Valor de retorno
O número da última página a ser impressa.
Comentários
Esse é o valor especificado pelo usuário na caixa de diálogo Imprimir e é armazenado no objeto CPrintDialog
referenciado pelo membro m_pPD
. Se o usuário não tiver especificado um valor, o padrão será a última página do documento.
CPrintInfo::m_bContinuePrinting
Contém um sinalizador que indica se a estrutura deve continuar o loop de impressão.
Comentários
Se você estiver fazendo paginação em tempo de impressão, poderá definir esse membro como FALSE em sua substituição de CView::OnPrepareDC
quando o final do documento tiver sido atingido. Você não precisará modificar essa variável se tiver especificado o comprimento do documento no início do trabalho de impressão usando a função de membro SetMaxPage
. O membro m_bContinuePrinting
é uma variável pública do tipo BOOL.
CPrintInfo::m_bDirect
A estrutura define esse membro como TRUE se a caixa de diálogo Imprimir for ignorada para impressão direta; FALSE caso contrário.
Comentários
A caixa de diálogo Imprimir normalmente é ignorada quando você imprime do shell ou quando a impressão é concluída usando a ID de comando ID_FILE_PRINT_DIRECT.
Normalmente, você não altera esse membro, mas se você alterá-lo, altere-o antes de chamar CView::DoPreparePrinting na substituição de CView::OnPreparePrinting.
CPrintInfo::m_bDocObject
Contém um sinalizador que indica se o documento que está sendo impresso é um DocObject.
Comentários
Membros de dados m_dwFlags
e m_nOffsetPage
serão inválidos, a menos que esse sinalizador seja TRUE.
CPrintInfo::m_bPreview
Contém um sinalizador que indica se o documento está sendo pré-visualizado.
Comentários
Isso é definido pela estrutura dependendo de qual comando o usuário executou. A caixa de diálogo Imprimir não é exibida para um trabalho de pré-visualização de impressão. O membro m_bPreview
é uma variável pública do tipo BOOL.
CPrintInfo::m_dwFlags
Contém uma combinação de sinalizadores especificando operações de impressão DocObject.
Comentários
Válido somente se o membro de dados m_bDocObject
for TRUE.
Os sinalizadores podem ser um ou mais dos seguintes:
PRINTFLAG_MAYBOTHERUSER
PRINTFLAG_PROMPTUSER
PRINTFLAG_USERMAYCHANGEPRINTER
PRINTFLAG_RECOMPOSETODEVICE
PRINTFLAG_DONTACTUALLYPRINT
PRINTFLAG_FORCEPROPERTIES
PRINTFLAG_PRINTTOFILE
CPrintInfo::m_lpUserData
Retorna um ponteiro para uma estrutura criada pelo usuário.
Comentários
Você pode usar isso para armazenar dados específicos de impressão que não deseja armazenar em sua classe de exibição. O membro m_lpUserData
é uma variável pública do tipo LPVOID.
CPrintInfo::m_nCurPage
Contém o número da página atual.
Comentários
A estrutura chama CView::OnPrepareDC
e CView::OnPrint
uma vez para cada página do documento, especificando um valor diferente para esse membro a cada vez; seus valores variam do valor retornado pelo GetFromPage
retornado por GetToPage
. Use esse membro em suas substituições de CView::OnPrepareDC
e CView::OnPrint
para imprimir a página especificada do documento.
Quando o modo de pré-visualização é invocado pela primeira vez, a estrutura lê o valor deste membro para determinar qual página do documento deve ser pré-visualizada inicialmente. Você pode definir o valor desse membro em sua substituição de CView::OnPreparePrinting
para manter a posição atual do usuário no documento ao entrar no modo de pré-visualização. O membro m_nCurPage
é uma variável pública do tipo UINT.
CPrintInfo::m_nJobNumber
Indica o número do trabalho atribuído pelo sistema operacional para o trabalho de impressão atual.
Comentários
Esse valor poderá ser SP_ERROR se o trabalho ainda não tiver sido impresso (ou seja, se o objeto CPrintInfo
tiver sido construído recentemente e ainda não tiver sido usado para imprimir) ou se houve um erro ao iniciar o trabalho.
CPrintInfo::m_nNumPreviewPages
Contém o número de páginas exibidas no modo de pré-visualização; pode ser 1 ou 2.
Comentários
O membro m_nNumPreviewPages
é uma variável pública do tipo UINT.
CPrintInfo::m_nOffsetPage
Contém o número de páginas anteriores à primeira página de um DocObject específico em um trabalho de impressão do DocObject combinado.
CPrintInfo::m_pPD
Contém um ponteiro para o objeto CPrintDialog
usado para exibir a caixa de diálogo Imprimir para o trabalho de impressão.
Comentários
O membro m_pPD
é uma variável pública declarada como um ponteiro para CPrintDialog
.
CPrintInfo::m_rectDraw
Especifica a área de desenho utilizável da página em coordenadas lógicas.
Comentários
Talvez você queira fazer referência a isso em sua substituição de CView::OnPrint
. Você pode usar esse membro para controlar qual área permanece utilizável depois de imprimir cabeçalhos, rodapés etc. O membro m_rectDraw
é uma variável pública do tipo CRect
.
CPrintInfo::m_strPageDesc
Contém uma cadeia de caracteres de formato usada para exibir os números da página durante a pré-visualização de impressão; essa cadeia de caracteres consiste em duas substrings, uma para exibição de página única e outra para exibição de página dupla, cada uma terminada por um caractere '\n'.
Comentários
A estrutura usa "Página %u\nPáginas %u-%u\n" como o valor padrão. Se você quiser um formato diferente para os números de página, especifique uma cadeia de caracteres de formato em sua substituição de CView::OnPreparePrinting
. O membro m_strPageDesc
é uma variável pública do tipo CString
.
CPrintInfo::SetMaxPage
Chame essa função para especificar o número da última página do documento.
void SetMaxPage(UINT nMaxPage);
Parâmetros
nMaxPage
Número da última página do documento.
Comentários
Esse valor é armazenado no objeto CPrintDialog
referenciado pelo membro m_pPD
. Se o comprimento do documento for conhecido antes de ser impresso, chame essa função de sua substituição de CView::OnPreparePrinting
. Se o comprimento do documento depender de uma configuração especificada pelo usuário na caixa de diálogo Imprimir, chame essa função de sua substituição de CView::OnBeginPrinting
. Se o comprimento do documento não for conhecido até que ele seja impresso, use o membro m_bContinuePrinting
para controlar o loop de impressão.
Exemplo
Confira o exemplo para CView::OnPreparePrinting.
CPrintInfo::SetMinPage
Chame essa função para especificar o número da primeira página do documento.
void SetMinPage(UINT nMinPage);
Parâmetros
nMinPage
Número da primeira página do documento.
Comentários
Os números de página normalmente começam em 1. Esse valor é armazenado no objeto CPrintDialog
referenciado pelo membro m_pPD
.
Confira também
DIBLOOK de exemplo do MFC
Gráfico da hierarquia
CView::OnBeginPrinting
CView::OnEndPrinting
CView::OnEndPrintPreview
CView::OnPrepareDC
CView::OnPreparePrinting
CView::OnPrint