Partager via


CPrintInfo, structure

Stocke des informations sur un travail d’impression ou d’aperçu avant impression.

Syntaxe

struct CPrintInfo

Membres

Méthodes publiques

Nom Description
CPrintInfo ::GetFromPage Retourne le nombre de la première page imprimée.
CPrintInfo ::GetMaxPage Retourne le numéro de la dernière page du document.
CPrintInfo ::GetMinPage Retourne le nombre de la première page du document.
CPrintInfo ::GetOffsetPage Retourne le nombre de pages précédant la première page d’un élément DocObject imprimé dans un travail d’impression DocObject combiné.
CPrintInfo ::GetToPage Retourne le nombre de la dernière page imprimée.
CPrintInfo ::SetMaxPage Définit le nombre de la dernière page du document.
CPrintInfo ::SetMinPage Définit le nombre de la première page du document.

Membres de données publics

Nom Description
CPrintInfo ::m_bContinuePrinting Contient un indicateur indiquant si l’infrastructure doit continuer la boucle d’impression.
CPrintInfo ::m_bDirect Contient un indicateur indiquant si le document est imprimé directement (sans afficher la boîte de dialogue Imprimer).
CPrintInfo ::m_bDocObject Contient un indicateur indiquant si le document en cours d’impression est un DocObject.
CPrintInfo ::m_bPreview Contient un indicateur indiquant si le document est en cours d’aperçu.
CPrintInfo ::m_dwFlags Spécifie les opérations d’impression DocObject.
CPrintInfo ::m_lpUserData Contient un pointeur vers une structure créée par l’utilisateur.
CPrintInfo ::m_nCurPage Identifie le numéro de la page en cours d’impression.
CPrintInfo ::m_nJobNumber Spécifie le numéro de travail attribué par le système d’exploitation pour le travail d’impression actuel
CPrintInfo ::m_nNumPreviewPages Identifie le nombre de pages affichées dans la fenêtre d’aperçu ; soit 1 ou 2.
CPrintInfo ::m_nOffsetPage Spécifie le décalage de la première page d’un DocObject particulier dans un travail d’impression DocObject combiné.
CPrintInfo ::m_pPD Contient un pointeur vers l’objet CPrintDialog utilisé pour la boîte de dialogue Imprimer.
CPrintInfo ::m_rectDraw Spécifie un rectangle définissant la zone de page utilisable actuelle.
CPrintInfo ::m_strPageDesc Contient une chaîne de format pour l’affichage du numéro de page.

Notes

CPrintInfo est une structure et n’a pas de classe de base.

L’infrastructure crée un objet de CPrintInfo chaque fois que la commande Print ou Print Preview est choisie et la détruit lorsque la commande est terminée.

CPrintInfo contient des informations sur la tâche d’impression dans son ensemble, telles que la plage de pages à imprimer et l’état actuel du travail d’impression, tel que la page en cours d’impression. Certaines informations sont stockées dans un objet CPrintDialog associé ; cet objet contient les valeurs entrées par l’utilisateur dans la boîte de dialogue Imprimer.

Un CPrintInfo objet est passé entre l’infrastructure et votre classe d’affichage pendant le processus d’impression et est utilisé pour échanger des informations entre les deux. Par exemple, l’infrastructure informe la classe d’affichage de la page du document à imprimer en affectant une valeur au m_nCurPage membre CPrintInfode ; la classe d’affichage récupère la valeur et effectue l’impression réelle de la page spécifiée.

Un autre exemple est le cas où la longueur du document n’est pas connue tant qu’il n’est pas imprimé. Dans ce cas, la classe d’affichage teste la fin du document chaque fois qu’une page est imprimée. Lorsque la fin est atteinte, la classe d’affichage définit le m_bContinuePrinting membre sur CPrintInfo FALSE ; cela informe l’infrastructure d’arrêter la boucle d’impression.

CPrintInfo est utilisé par les fonctions membres de CView la liste sous « Voir aussi ». Pour plus d’informations sur l’architecture d’impression fournie par la bibliothèque de classes Microsoft Foundation, consultez Frame Windows and Document/View Architecture et les articles Printing and Printing : Multipage Documents.

Hiérarchie d'héritage

CPrintInfo

Spécifications

En-tête : afxext.h

CPrintInfo ::GetFromPage

Appelez cette fonction pour récupérer le numéro de la première page à imprimer.

UINT GetFromPage() const;

Valeur de retour

Numéro de la première page à imprimer.

Notes

Il s’agit de la valeur spécifiée par l’utilisateur dans la boîte de dialogue Imprimer et stockée dans l’objet CPrintDialog référencé par le m_pPD membre. Si l’utilisateur n’a pas spécifié de valeur, la valeur par défaut est la première page du document.

CPrintInfo ::GetMaxPage

Appelez cette fonction pour récupérer le numéro de la dernière page du document.

UINT GetMaxPage() const;

Valeur de retour

Numéro de la dernière page du document.

Notes

Cette valeur est stockée dans l’objet CPrintDialog référencé par le m_pPD membre.

CPrintInfo ::GetMinPage

Appelez cette fonction pour récupérer le numéro de la première page du document.

UINT GetMinPage() const;

Valeur de retour

Numéro de la première page du document.

Notes

Cette valeur est stockée dans l’objet CPrintDialog référencé par le m_pPD membre.

CPrintInfo ::GetOffsetPage

Appelez cette fonction pour récupérer le décalage lors de l’impression de plusieurs éléments DocObject à partir d’un client DocObject.

UINT GetOffsetPage() const;

Valeur de retour

Nombre de pages précédant la première page d’un élément DocObject imprimé dans un travail d’impression DocObject combiné.

Notes

Cette valeur est référencée par le m_nOffsetPage membre. La première page de votre document est numérotée + m_nOffsetPage 1 lorsqu’elle est imprimée sous la forme d’un DocObject avec d’autres documents actifs. Le m_nOffsetPage membre est valide uniquement si la m_bDocObject valeur est TRUE.

CPrintInfo ::GetToPage

Appelez cette fonction pour récupérer le numéro de la dernière page à imprimer.

UINT GetToPage() const;

Valeur de retour

Numéro de la dernière page à imprimer.

Notes

Il s’agit de la valeur spécifiée par l’utilisateur dans la boîte de dialogue Imprimer et stockée dans l’objet CPrintDialog référencé par le m_pPD membre. Si l’utilisateur n’a pas spécifié de valeur, la valeur par défaut est la dernière page du document.

CPrintInfo ::m_bContinuePrinting

Contient un indicateur indiquant si l’infrastructure doit continuer la boucle d’impression.

Notes

Si vous effectuez une pagination au moment de l’impression, vous pouvez définir ce membre sur FALSE dans votre remplacement une CView::OnPrepareDC fois la fin du document atteinte. Vous n’avez pas besoin de modifier cette variable si vous avez spécifié la longueur du document au début du travail d’impression à l’aide de la SetMaxPage fonction membre. Le m_bContinuePrinting membre est une variable publique de type BOOL.

CPrintInfo ::m_bDirect

L’infrastructure définit ce membre sur TRUE si la boîte de dialogue Imprimer est ignorée pour l’impression directe ; FALSE dans le cas contraire.

Notes

La boîte de dialogue Imprimer est normalement ignorée lorsque vous imprimez à partir de l’interpréteur de commandes ou lorsque l’impression est effectuée à l’aide de l’ID de commande ID_FILE_PRINT_DIRECT.

Normalement, vous ne modifiez pas ce membre, mais si vous le modifiez, modifiez-le avant d’appeler CView ::D oPreparePrinting dans votre remplacement de CView ::OnPreparePrinting.

CPrintInfo ::m_bDocObject

Contient un indicateur indiquant si le document en cours d’impression est un DocObject.

Notes

Les membres m_dwFlags de données et m_nOffsetPage ne sont pas valides, sauf si cet indicateur a la valeur TRUE.

CPrintInfo ::m_bPreview

Contient un indicateur indiquant si le document est en cours d’aperçu.

Notes

Cela est défini par l’infrastructure en fonction de la commande exécutée par l’utilisateur. La boîte de dialogue Imprimer n’est pas affichée pour un travail d’aperçu avant impression. Le m_bPreview membre est une variable publique de type BOOL.

CPrintInfo ::m_dwFlags

Contient une combinaison d’indicateurs spécifiant les opérations d’impression DocObject.

Notes

Valide uniquement si le membre m_bDocObject de données a la valeur TRUE.

Les indicateurs peuvent être une ou plusieurs des valeurs suivantes :

  • PRINTFLAG_MAYBOTHERUSER

  • PRINTFLAG_PROMPTUSER

  • PRINTFLAG_USERMAYCHANGEPRINTER

  • PRINTFLAG_RECOMPOSETODEVICE

  • PRINTFLAG_DONTACTUALLYPRINT

  • PRINTFLAG_FORCEPROPERTIES

  • PRINTFLAG_PRINTTOFILE

CPrintInfo ::m_lpUserData

Contient un pointeur vers une structure créée par l’utilisateur.

Notes

Vous pouvez l’utiliser pour stocker des données spécifiques à l’impression que vous ne souhaitez pas stocker dans votre classe d’affichage. Le m_lpUserData membre est une variable publique de type LPVOID.

CPrintInfo ::m_nCurPage

Contient le nombre de la page active.

Notes

L’infrastructure appelle CView::OnPrepareDC et CView::OnPrint une fois pour chaque page du document, en spécifiant une valeur différente pour ce membre à chaque fois ; ses valeurs vont de la valeur retournée par GetFromPage celle retournée par GetToPage. Utilisez ce membre dans vos remplacements CView::OnPrepareDC et CView::OnPrint imprimez la page spécifiée du document.

Lorsque le mode d’aperçu est appelé pour la première fois, l’infrastructure lit la valeur de ce membre pour déterminer la page du document à afficher initialement. Vous pouvez définir la valeur de ce membre dans votre remplacement pour conserver la position actuelle de l’utilisateur dans le document lors de CView::OnPreparePrinting l’entrée en mode aperçu. Le m_nCurPage membre est une variable publique de type UINT.

CPrintInfo ::m_nJobNumber

Indique le numéro de travail attribué par le système d’exploitation pour la tâche d’impression actuelle.

Notes

Cette valeur peut être SP_ERROR si le travail n’a pas encore été imprimé (autrement dit, si l’objet CPrintInfo est nouvellement construit et n’a pas encore été utilisé pour imprimer), ou s’il y a eu une erreur lors du démarrage du travail.

CPrintInfo ::m_nNumPreviewPages

Contient le nombre de pages affichées en mode aperçu ; il peut s’agir de 1 ou 2.

Notes

Le m_nNumPreviewPages membre est une variable publique de type UINT.

CPrintInfo ::m_nOffsetPage

Contient le nombre de pages précédant la première page d’un DocObject particulier dans un travail d’impression DocObject combiné.

CPrintInfo ::m_pPD

Contient un pointeur vers l’objet CPrintDialog utilisé pour afficher la boîte de dialogue Imprimer pour la tâche d’impression.

Notes

Le m_pPD membre est une variable publique déclarée comme pointeur vers CPrintDialog.

CPrintInfo ::m_rectDraw

Spécifie la zone de dessin utilisable de la page en coordonnées logiques.

Notes

Vous souhaiterez peut-être faire référence à ceci dans votre remplacement de CView::OnPrint. Vous pouvez utiliser ce membre pour suivre la zone qui reste utilisable après avoir imprimé des en-têtes, des pieds de page, et ainsi de suite. Le m_rectDraw membre est une variable publique de type CRect.

CPrintInfo ::m_strPageDesc

Contient une chaîne de format utilisée pour afficher les numéros de page pendant l’aperçu avant impression ; cette chaîne se compose de deux sous-chaînes, une pour l’affichage monopage et une pour l’affichage double page, chacune se terminant par un caractère « \n ».

Notes

L’infrastructure utilise « Page %u\nPages %u-%u\n » comme valeur par défaut. Si vous souhaitez un format différent pour les numéros de page, spécifiez une chaîne de format dans votre remplacement de CView::OnPreparePrinting. Le m_strPageDesc membre est une variable publique de type CString.

CPrintInfo ::SetMaxPage

Appelez cette fonction pour spécifier le numéro de la dernière page du document.

void SetMaxPage(UINT nMaxPage);

Paramètres

nMaxPage
Numéro de la dernière page du document.

Notes

Cette valeur est stockée dans l’objet CPrintDialog référencé par le m_pPD membre. Si la longueur du document est connue avant son impression, appelez cette fonction à partir de votre remplacement.CView::OnPreparePrinting Si la longueur du document dépend d’un paramètre spécifié par l’utilisateur dans la boîte de dialogue Imprimer, appelez cette fonction à partir de votre remplacement.CView::OnBeginPrinting Si la longueur du document n’est pas connue tant qu’il n’est pas imprimé, utilisez le m_bContinuePrinting membre pour contrôler la boucle d’impression.

Exemple

Consultez l’exemple de CView ::OnPreparePrinting.

CPrintInfo ::SetMinPage

Appelez cette fonction pour spécifier le numéro de la première page du document.

void SetMinPage(UINT nMinPage);

Paramètres

nMinPage
Numéro de la première page du document.

Notes

Les numéros de page commencent normalement à 1. Cette valeur est stockée dans l’objet CPrintDialog référencé par le m_pPD membre.

Voir aussi

Exemple DIBLOOK MFC
Graphique hiérarchique
CView ::OnBeginPrinting
CView ::OnEndPrinting
CView ::OnEndPrintPreview
CView ::OnPrepareDC
CView ::OnPreparePrinting
CView ::OnPrint