Teilen über


CPrintInfo-Struktur

Speichert Informationen zu einem Druck- oder Druckvorschauauftrag.

Syntax

struct CPrintInfo

Member

Öffentliche Methoden

Name Beschreibung
CPrintInfo::GetFromPage Gibt die Nummer der ersten Seite zurück, die gedruckt wird.
CPrintInfo::GetMaxPage Gibt die Nummer der letzten Seite des Dokuments zurück.
CPrintInfo::GetMinPage Gibt die Nummer der ersten Seite des Dokuments zurück.
CPrintInfo::GetOffsetPage Gibt die Anzahl der Seiten zurück, die der ersten Seite eines DocObject-Elements vorausgehen, das in einem kombinierten DocObject-Druckauftrag gedruckt wird.
CPrintInfo::GetToPage Gibt die Nummer der letzten seite zurück, die gedruckt wird.
CPrintInfo::SetMaxPage Legt die Nummer der letzten Seite des Dokuments fest.
CPrintInfo::SetMinPage Legt die Nummer der ersten Seite des Dokuments fest.

Öffentliche Datenmember

Name Beschreibung
CPrintInfo::m_bContinuePrinting Enthält ein Flag, das angibt, ob das Framework die Druckschleife fortsetzen soll.
CPrintInfo::m_bDirect Enthält ein Kennzeichen, das angibt, ob das Dokument direkt gedruckt wird (ohne das Dialogfeld "Drucken" anzuzeigen).
CPrintInfo::m_bDocObject Enthält ein Flag, das angibt, ob das gedruckte Dokument ein DocObject ist.
CPrintInfo::m_bPreview Enthält ein Flag, das angibt, ob das Dokument in der Vorschau angezeigt wird.
CPrintInfo::m_dwFlags Gibt DocObject-Druckvorgänge an.
CPrintInfo::m_lpUserData Enthält einen Zeiger auf eine vom Benutzer erstellte Struktur.
CPrintInfo::m_nCurPage Gibt die Anzahl der aktuell gedruckten Seite an.
CPrintInfo::m_nJobNumber Gibt die Auftragsnummer an, die vom Betriebssystem für den aktuellen Druckauftrag zugewiesen wurde.
CPrintInfo::m_nNumPreviewPages Gibt die Anzahl der im Vorschaufenster angezeigten Seiten an; entweder 1 oder 2.
CPrintInfo::m_nOffsetPage Gibt den Offset der ersten Seite eines bestimmten DocObject in einem kombinierten DocObject-Druckauftrag an.
CPrintInfo::m_pPD Enthält einen Zeiger auf das Objekt, das CPrintDialog für das Dialogfeld "Drucken" verwendet wird.
CPrintInfo::m_rectDraw Gibt ein Rechteck an, das den aktuellen verwendbaren Seitenbereich definiert.
CPrintInfo::m_strPageDesc Enthält eine Formatzeichenfolge für die Seitenzahlanzeige.

Hinweise

CPrintInfo ist eine Struktur und verfügt nicht über eine Basisklasse.

Das Framework erstellt ein Objekt CPrintInfo jedes Mal, wenn der Befehl "Drucken" oder "Seitenansicht" ausgewählt wird, und zerstört es, wenn der Befehl abgeschlossen ist.

CPrintInfo enthält Informationen über den gesamten Druckauftrag, z. B. den zu druckende Seitenbereich und den aktuellen Status des Druckauftrags, z. B. die aktuell gedruckte Seite. Einige Informationen werden in einem zugeordneten CPrintDialog-Objekt gespeichert. Dieses Objekt enthält die vom Benutzer im Dialogfeld "Drucken" eingegebenen Werte.

Ein CPrintInfo Objekt wird während des Druckvorgangs zwischen dem Framework und der Ansichtsklasse übergeben und zum Austauschen von Informationen zwischen den beiden verwendet. Das Framework informiert beispielsweise die Ansichtsklasse, welche Seite des Dokuments gedruckt werden soll, indem dem Element CPrintInfoein m_nCurPage Wert zugewiesen wird; die Ansichtsklasse ruft den Wert ab und führt den tatsächlichen Druck der angegebenen Seite aus.

Ein weiteres Beispiel ist der Fall, in dem die Länge des Dokuments erst bekannt ist, wenn es gedruckt wird. In diesem Fall prüft die Ansichtsklasse jedes Mal, wenn eine Seite gedruckt wird, das Ende des Dokuments. Wenn das Ende erreicht ist, legt die Ansichtsklasse den m_bContinuePrinting Member von CPrintInfo FALSE fest. Dadurch wird das Framework informiert, die Druckschleife zu beenden.

CPrintInfo wird von den Mitgliedsfunktionen der CView unter "Siehe auch" aufgeführten Funktionen verwendet. Weitere Informationen zur Druckarchitektur der Microsoft Foundation-Klassenbibliothek finden Sie unter Frame-Windows - und Dokument-/Ansichtsarchitektur und den Artikeln "Drucken und Drucken: Mehrseitige Dokumente".

Vererbungshierarchie

CPrintInfo

Anforderungen

Header: afxext.h

CPrintInfo::GetFromPage

Rufen Sie diese Funktion auf, um die Nummer der ersten zu druckende Seite abzurufen.

UINT GetFromPage() const;

Rückgabewert

Die Nummer der ersten zu druckende Seite.

Hinweise

Dies ist der vom Benutzer im Dialogfeld "Drucken" angegebene Wert und wird im CPrintDialog Objekt gespeichert, auf das vom m_pPD Element verwiesen wird. Wenn der Benutzer keinen Wert angegeben hat, ist die Standardeinstellung die erste Seite des Dokuments.

CPrintInfo::GetMaxPage

Rufen Sie diese Funktion auf, um die Nummer der letzten Seite des Dokuments abzurufen.

UINT GetMaxPage() const;

Rückgabewert

Die Nummer der letzten Seite des Dokuments.

Hinweise

Dieser Wert wird im CPrintDialog Objekt gespeichert, auf das vom m_pPD Element verwiesen wird.

CPrintInfo::GetMinPage

Rufen Sie diese Funktion auf, um die Nummer der ersten Seite des Dokuments abzurufen.

UINT GetMinPage() const;

Rückgabewert

Die Nummer der ersten Seite des Dokuments.

Hinweise

Dieser Wert wird im CPrintDialog Objekt gespeichert, auf das vom m_pPD Element verwiesen wird.

CPrintInfo::GetOffsetPage

Rufen Sie diese Funktion auf, um den Offset beim Drucken mehrerer DocObject-Elemente von einem DocObject-Client abzurufen.

UINT GetOffsetPage() const;

Rückgabewert

Die Anzahl der Seiten vor der ersten Seite eines DocObject-Elements, das in einem kombinierten DocObject-Druckauftrag gedruckt wird.

Hinweise

Auf diesen Wert wird vom m_nOffsetPage Element verwiesen. Die erste Seite Ihres Dokuments wird beim Drucken als DocObject mit anderen aktiven Dokumenten mit dem m_nOffsetPage Wert +1 nummeriert. Das m_nOffsetPage Element ist nur gültig, wenn der m_bDocObject Wert WAHR ist.

CPrintInfo::GetToPage

Rufen Sie diese Funktion auf, um die Nummer der letzten zu druckende Seite abzurufen.

UINT GetToPage() const;

Rückgabewert

Die Nummer der letzten zu druckende Seite.

Hinweise

Dies ist der vom Benutzer im Dialogfeld "Drucken" angegebene Wert und wird im CPrintDialog Objekt gespeichert, auf das vom m_pPD Element verwiesen wird. Wenn der Benutzer keinen Wert angegeben hat, ist die Standardeinstellung die letzte Seite des Dokuments.

CPrintInfo::m_bContinuePrinting

Enthält ein Flag, das angibt, ob das Framework die Druckschleife fortsetzen soll.

Hinweise

Wenn Sie die Seitenauslagerung in Druckzeit ausführen, können Sie dieses Element in Der Außerkraftsetzung CView::OnPrepareDC auf FALSE festlegen, sobald das Ende des Dokuments erreicht wurde. Sie müssen diese Variable nicht ändern, wenn Sie die Länge des Dokuments am Anfang des Druckauftrags mithilfe der SetMaxPage Memberfunktion angegeben haben. Das m_bContinuePrinting Element ist eine öffentliche Variable vom Typ BOOL.

CPrintInfo::m_bDirect

Das Framework legt dieses Element auf TRUE fest, wenn das Dialogfeld "Drucken" für den direkten Druck umgangen wird. Andernfalls FALSE.

Hinweise

Das Dialogfeld "Drucken" wird normalerweise umgangen, wenn Sie aus der Shell drucken oder wenn der Druck mithilfe der Befehls-ID ID_FILE_PRINT_DIRECT erfolgt.

Normalerweise ändern Sie dieses Element nicht, aber wenn Sie es ändern, ändern Sie es, bevor Sie CView::D oPreparePrinting in Ihrer Außerkraftsetzung von CView::OnPreparePrinting aufrufen.

CPrintInfo::m_bDocObject

Enthält ein Flag, das angibt, ob das gedruckte Dokument ein DocObject ist.

Hinweise

Datenmmber m_dwFlags und m_nOffsetPage sind ungültig, es sei denn, dieses Kennzeichen ist WAHR.

CPrintInfo::m_bPreview

Enthält ein Flag, das angibt, ob das Dokument in der Vorschau angezeigt wird.

Hinweise

Dies wird durch das Framework festgelegt, je nachdem, welchen Befehl der Benutzer ausgeführt hat. Das Dialogfeld "Drucken" wird für einen Druckvorschauauftrag nicht angezeigt. Das m_bPreview Element ist eine öffentliche Variable vom Typ BOOL.

CPrintInfo::m_dwFlags

Enthält eine Kombination von Flags, die DocObject-Druckvorgänge angeben.

Hinweise

Nur gültig, wenn der Datenmemm m_bDocObject "TRUE" ist.

Die Flags können einen oder mehrere der folgenden Werte sein:

  • PRINTFLAG_MAYBOTHERUSER

  • PRINTFLAG_PROMPTUSER

  • PRINTFLAG_USERMAYCHANGEPRINTER

  • PRINTFLAG_RECOMPOSETODEVICE

  • PRINTFLAG_DONTACTUALLYPRINT

  • PRINTFLAG_FORCEPROPERTIES

  • PRINTFLAG_PRINTTOFILE

CPrintInfo::m_lpUserData

Enthält einen Zeiger auf eine vom Benutzer erstellte Struktur.

Hinweise

Sie können dies verwenden, um druckspezifische Daten zu speichern, die Sie nicht in Ihrer Ansichtsklasse speichern möchten. Das m_lpUserData Element ist eine öffentliche Variable vom Typ LPVOID.

CPrintInfo::m_nCurPage

Enthält die Anzahl der aktuellen Seite.

Hinweise

Das Framework ruft CView::OnPrepareDC und CView::OnPrint einmal für jede Seite des Dokuments einen anderen Wert für dieses Element an; seine Werte reichen von dem Von diesem zurückgegebenen GetFromPage GetToPageWert. Verwenden Sie dieses Element in Ihren Außerkraftsetzungen CView::OnPrepareDC und CView::OnPrint drucken Sie die angegebene Seite des Dokuments.

Wenn der Vorschaumodus zum ersten Mal aufgerufen wird, liest das Framework den Wert dieses Elements, um zu bestimmen, welche Seite des Dokuments zunächst in der Vorschau angezeigt werden soll. Sie können den Wert dieses Elements in Ihrer Außerkraftsetzung CView::OnPreparePrinting festlegen, um die aktuelle Position des Benutzers im Dokument beizubehalten, wenn sie in den Vorschaumodus wechselt. Das m_nCurPage Element ist eine öffentliche Variable vom Typ UINT.

CPrintInfo::m_nJobNumber

Gibt die Auftragsnummer an, die vom Betriebssystem für den aktuellen Druckauftrag zugewiesen wurde.

Hinweise

Dieser Wert kann SP_ERROR werden, wenn der Auftrag noch nicht gedruckt wurde (d. h., wenn das CPrintInfo Objekt neu erstellt wurde und noch nicht zum Drucken verwendet wurde), oder wenn beim Starten des Auftrags ein Fehler aufgetreten ist.

CPrintInfo::m_nNumPreviewPages

Enthält die Anzahl der Seiten, die im Vorschaumodus angezeigt werden; es kann entweder 1 oder 2 sein.

Hinweise

Das m_nNumPreviewPages Element ist eine öffentliche Variable vom Typ UINT.

CPrintInfo::m_nOffsetPage

Enthält die Anzahl der Seiten vor der ersten Seite eines bestimmten DocObject in einem kombinierten DocObject-Druckauftrag.

CPrintInfo::m_pPD

Enthält einen Zeiger auf das CPrintDialog Objekt, das zum Anzeigen des Dialogfelds "Drucken" für den Druckauftrag verwendet wird.

Hinweise

Das m_pPD Element ist eine öffentliche Variable, die als Zeiger deklariert CPrintDialogwird.

CPrintInfo::m_rectDraw

Gibt den verwendbaren Zeichnungsbereich des Zeichenblatts in logischen Koordinaten an.

Hinweise

Möglicherweise möchten Sie in Der Außerkraftsetzung von CView::OnPrint. Sie können dieses Element verwenden, um nach dem Drucken von Kopfzeilen, Fußzeilen usw. nachzuverfolgen, welcher Bereich weiterhin verwendet werden kann. Das m_rectDraw Element ist eine öffentliche Variable vom Typ CRect.

CPrintInfo::m_strPageDesc

Enthält eine Formatzeichenfolge, die zum Anzeigen der Seitenzahlen während der Seitenvorschau verwendet wird. Diese Zeichenfolge besteht aus zwei Teilzeichenfolgen, einer für die Einzelseitenanzeige und eine für die Doppelseitenanzeige, die jeweils durch ein "\n"-Zeichen beendet wird.

Hinweise

Das Framework verwendet "Page %u\nPages %u-%u\n" als Standardwert. Wenn Sie ein anderes Format für die Seitenzahlen benötigen, geben Sie eine Formatzeichenfolge in Der Überschreibung an CView::OnPreparePrinting. Das m_strPageDesc Element ist eine öffentliche Variable vom Typ CString.

CPrintInfo::SetMaxPage

Rufen Sie diese Funktion auf, um die Nummer der letzten Seite des Dokuments anzugeben.

void SetMaxPage(UINT nMaxPage);

Parameter

nMaxPage
Die Nummer der letzten Seite des Dokuments.

Hinweise

Dieser Wert wird im CPrintDialog Objekt gespeichert, auf das vom m_pPD Element verwiesen wird. Wenn die Länge des Dokuments bekannt ist, bevor es gedruckt wird, rufen Sie diese Funktion aus der Außerkraftsetzung von CView::OnPreparePrinting. Wenn die Länge des Dokuments von einer Vom Benutzer im Dialogfeld "Drucken" angegebenen Einstellung abhängt, rufen Sie diese Funktion aus der Außerkraftsetzung von CView::OnBeginPrinting. Wenn die Länge des Dokuments erst bekannt ist, wenn es gedruckt wird, verwenden Sie das m_bContinuePrinting Element, um die Druckschleife zu steuern.

Beispiel

Sehen Sie sich das Beispiel für CView::OnPreparePrinting an.

CPrintInfo::SetMinPage

Rufen Sie diese Funktion auf, um die Nummer der ersten Seite des Dokuments anzugeben.

void SetMinPage(UINT nMinPage);

Parameter

nMinPage
Die Nummer der ersten Seite des Dokuments.

Hinweise

Seitenzahlen beginnen normalerweise bei 1. Dieser Wert wird im CPrintDialog Objekt gespeichert, auf das vom m_pPD Element verwiesen wird.

Siehe auch

MFC-Beispiel DIBLOOK
Hierarchiediagramm
CView::OnBeginPrinting
CView::OnEndPrinting
CView::OnEndPrintPreview
CView::OnPrepareDC
CView::OnPreparePrinting
CView::OnPrint