CPrintDialogEx – třída
Zapouzdřuje služby poskytované seznamem vlastností Tisk systému Windows.
Syntaxe
class CPrintDialogEx : public CCommonDialog
Členové
Veřejné konstruktory
Název | Popis |
---|---|
CPrintDialogEx::CPrintDialogEx | CPrintDialogEx Vytvoří objekt. |
Veřejné metody
Název | Popis |
---|---|
CPrintDialogEx::CreatePrinterDC | Vytvoří kontext zařízení tiskárny bez zobrazení dialogového okna Tisk. |
CPrintDialogEx::D oModal | Zobrazí dialogové okno a umožní uživateli provádět výběry. |
CPrintDialogEx::GetCopies | Načte požadovaný počet kopií. |
CPrintDialogEx::GetDefaults | Načte výchozí hodnoty zařízení bez zobrazení dialogového okna. |
CPrintDialogEx::GetDeviceName | Načte název aktuálně vybraného zařízení tiskárny. |
CPrintDialogEx::GetDevMode | Načte DEVMODE strukturu. |
CPrintDialogEx::GetDriverName | Načte název systémového ovladače zařízení tiskárny. |
CPrintDialogEx::GetPortName | Načte název aktuálně vybraného portu tiskárny. |
CPrintDialogEx::GetPrinterDC | Načte popisovač kontextu zařízení tiskárny. |
CPrintDialogEx::P rintAll | Určuje, zda se mají vytisknout všechny stránky dokumentu. |
CPrintDialogEx::P rintCollate | Určuje, zda jsou požadovány kompletované kopie. |
CPrintDialogEx::P rintCurrentPage | Určuje, zda se má vytisknout aktuální stránka dokumentu. |
CPrintDialogEx::P rintRange | Určuje, zda se má vytisknout pouze zadaný rozsah stránek. |
CPrintDialogEx::P rintSelection | Určuje, zda se mají vytisknout pouze aktuálně vybrané položky. |
Veřejné datové členy
Název | Popis |
---|---|
CPrintDialogEx::m_pdex | Struktura použitá k přizpůsobení objektu CPrintDialogEx . |
Poznámky
Při zpracování mnoha aspektů procesu tisku pro vaši aplikaci můžete spoléhat na architekturu. Další informace o použití architektury pro zpracování úloh tisku naleznete v článku Tisk.
Pokud chcete, aby vaše aplikace zpracovávala tisk bez zapojení architektury, můžete použít CPrintDialogEx
třídu "tak, jak je" se zadaným konstruktorem, nebo můžete odvodit vlastní třídu dialogového okna a CPrintDialogEx
napsat konstruktor tak, aby vyhovoval vašim potřebám. V obou případech se tato dialogová okna budou chovat jako standardní dialogová okna MFC, protože jsou odvozeny od třídy CCommonDialog
.
Chcete-li použít CPrintDialogEx
objekt, nejprve vytvořte objekt pomocí konstruktoru CPrintDialogEx
. Po vytvoření dialogového okna můžete nastavit nebo upravit jakékoli hodnoty ve struktuře m_pdex tak, aby inicializovaly hodnoty ovládacích prvků dialogového okna. Struktura m_pdex
je typu PRINTDLGEX. Další informace o této struktuře najdete v sadě Windows SDK.
Pokud nezadáte vlastní popisovače m_pdex
pro hDevMode
členy a hDevNames
členy, nezapomeňte při práci s dialogovým oknem volat funkci GlobalFree
Windows pro tyto popisovače.
Po inicializaci ovládacích prvků dialogového okna zavolejte DoModal
členovou funkci, aby zobrazila dialogové okno a povolila uživateli vybrat možnosti tisku. Když DoModal
se vrátí, můžete určit, jestli uživatel vybral tlačítko OK, Použít nebo Zrušit.
Pokud uživatel stiskl tlačítko OK, můžete k načtení informací, které uživatel zadá, použít CPrintDialogEx
členské funkce.
Členová CPrintDialogEx::GetDefaults
funkce je užitečná pro načtení výchozích hodnot aktuální tiskárny bez zobrazení dialogového okna. Tato metoda nevyžaduje žádnou interakci uživatele.
Pomocí funkce Systému Windows CommDlgExtendedError
můžete určit, jestli během inicializace dialogového okna došlo k chybě, a získat další informace o chybě. Další informace o této funkci najdete v sadě Windows SDK.
Další informace o použití CPrintDialogEx
naleznete v tématu Běžné třídy dialogových oken.
Hierarchie dědičnosti
IObjectWithSite
IPrintDialogCallback
CPrintDialogEx
Požadavky
Hlavička: afxdlgs.h
CPrintDialogEx::CPrintDialogEx
Vytvoří seznam vlastností Tisk systému Windows.
CPrintDialogEx(
DWORD dwFlags = PD_ALLPAGES | PD_USEDEVMODECOPIES | PD_NOPAGENUMS | PD_HIDEPRINTTOFILE | PD_NOSELECTION | PD_NOCURRENTPAGE,
CWnd* pParentWnd = NULL);
Parametry
dwFlags
Jeden nebo více příznaků, které můžete použít k přizpůsobení nastavení dialogového okna v kombinaci pomocí bitové operátoru OR. Příznak PD_ALLPAGES například nastaví výchozí rozsah tisku na všechny stránky dokumentu. Další informace o těchto příznakech najdete ve struktuře PRINTDLGEX v sadě Windows SDK.
pParentWnd
Ukazatel na nadřazené okno nebo okno vlastníka dialogového okna
Poznámky
Tato členová funkce vytvoří pouze objekt. DoModal
Pomocí členské funkce zobrazte dialogové okno.
CPrintDialogEx::CreatePrinterDC
Vytvoří kontext zařízení tiskárny (DC) ze struktur DEVMODE a DEVNAMES .
HDC CreatePrinterDC();
Návratová hodnota
Umožňuje zpracovat nově vytvořený kontext zařízení tiskárny.
Poznámky
Vrácený řadič domény je také uložen v členu hDC
m_pdex.
Tento řadič domény se předpokládá jako aktuální řadič domény tiskárny a všechny ostatní dříve získané řadiče domény tiskárny musí být odstraněny. Tuto funkci lze volat a výsledný řadič domény se používá bez zobrazení dialogového okna Tisk.
CPrintDialogEx::D oModal
Voláním této funkce zobrazíte seznam vlastností Tisk systému Windows a umožníte uživateli vybrat různé možnosti tisku, jako je počet kopií, rozsah stránek a zda mají být kopie kompletovány.
virtual INT_PTR DoModal();
Návratová hodnota
Vrácená hodnota INT_PTR je ve skutečnosti HRESULT. Viz část Návratové hodnoty v PrintDlgEx v sadě Windows SDK.
Poznámky
Pokud chcete inicializovat různé možnosti dialogového okna tisku nastavením členů m_pdex
struktury, měli byste to udělat před voláním DoModal
, ale po vytvoření objektu dialogového okna.
Po volání můžete zavolat DoModal
další členské funkce, které načtou nastavení nebo informace zadané uživatelem do dialogového okna.
Pokud se při volání DoModal
použije příznak PD_RETURNDC, vrátí se řadič domény tiskárny v členu hDC
m_pdex. Tento řadič domény musí být uvolněn voláním DeleteDC volajícím .CPrintDialogEx
CPrintDialogEx::GetCopies
Voláním této funkce načtěte DoModal
požadovaný počet kopií.
int GetCopies() const;
Návratová hodnota
Počet požadovaných kopií.
CPrintDialogEx::GetDefaults
Voláním této funkce načtěte výchozí nastavení zařízení výchozí tiskárny bez zobrazení dialogového okna.
BOOL GetDefaults();
Návratová hodnota
PRAVDA v případě úspěchu, jinak NEPRAVDA.
Poznámky
Vytvoří kontext zařízení tiskárny (DC) ze struktur DEVMODE a DEVNAMES .
GetDefaults
nezobrazuje seznam vlastností Tisk. Místo toho nastaví hDevNames
a hDevMode
členy m_pdex pro zpracování struktur DEVMODE a DEVNAMES , které jsou inicializovány pro výchozí systémovou tiskárnu. Obojí hDevNames
a hDevMode
musí mít hodnotu NULL nebo GetDefaults
se nezdaří.
Pokud je nastaven příznak PD_RETURNDC, tato funkce se vrátí nejen volajícímu hDevNames
a hDevMode
(umístěnému m_pdex.hDevNames
v a m_pdex.hDevMode
) , ale vrátí také tiskárnu DC v m_pdex.hDC
. Je zodpovědností volajícího odstranit řadič domény tiskárny a volat funkci Windows GlobalFree na popisovačích po dokončení s objektem CPrintDialogEx
.
CPrintDialogEx::GetDeviceName
Volání této funkce po volání DoModal načtení názvu aktuálně vybrané tiskárny nebo po volání GetDefaults načíst název výchozí tiskárny .
CString GetDeviceName() const;
Návratová hodnota
Název aktuálně vybrané tiskárny.
Poznámky
Použijte ukazatel na CString
objekt vrácený GetDeviceName
jako hodnotu lpszDeviceName
ve volání CDC::CreateDC.
CPrintDialogEx::GetDevMode
Volání této funkce po volání DoModal nebo GetDefaults načíst informace o tiskovém zařízení.
LPDEVMODE GetDevMode() const;
Návratová hodnota
Datová struktura DEVMODE , která obsahuje informace o inicializaci zařízení a prostředí tiskového ovladače. Paměť pořízenou touto strukturou musíte odemknout pomocí funkce Windows GlobalUnlock , která je popsaná v sadě Windows SDK.
CPrintDialogEx::GetDriverName
Volání této funkce po volání DoModal nebo GetDefaults načíst název ovladače zařízení tiskárny definované systémem.
CString GetDriverName() const;
Návratová hodnota
Zadejte CString
název ovladače definovaného systémem.
Poznámky
Použijte ukazatel na CString
objekt vrácený GetDriverName
jako hodnotu lpszDriverName ve volání CDC::CreateDC.
CPrintDialogEx::GetPortName
Volání této funkce po volání DoModal nebo GetDefaults načíst název aktuálně vybraného portu tiskárny .
CString GetPortName() const;
Návratová hodnota
Název aktuálně vybraného portu tiskárny.
CPrintDialogEx::GetPrinterDC
Vrátí popisovač kontextu zařízení tiskárny.
HDC GetPrinterDC() const;
Návratová hodnota
Popisovač kontextu zařízení tiskárny.
Poznámky
Funkci Windows DeleteDC je nutné volat, abyste po dokončení používání odstranili kontext zařízení.
CPrintDialogEx::m_pdex
Struktura PRINTDLGEX, jejíž členy ukládají vlastnosti dialogového objektu.
PRINTDLGEX m_pdex;
Poznámky
Po vytvoření objektu CPrintDialogEx
můžete před voláním členské funkce DoModal nastavit m_pdex
různé aspekty dialogového okna. Další informace o m_pdex
struktuře naleznete v tématu PRINTDLGEX v sadě Windows SDK.
Pokud datový člen upravíte m_pdex
přímo, přepíšete veškeré výchozí chování.
CPrintDialogEx::P rintAll
Zavoláním této funkce DoModal
určíte, jestli se mají vytisknout všechny stránky v dokumentu.
BOOL PrintAll() const;
Návratová hodnota
PRAVDA, pokud budou vytištěny všechny stránky v dokumentu; jinak NEPRAVDA.
CPrintDialogEx::P rintCollate
Voláním této funkce DoModal
určíte, zda má tiskárna kompletovat všechny vytištěné kopie dokumentu.
BOOL PrintCollate() const;
Návratová hodnota
TRUE, pokud uživatel zaškrtne políčko kompletovat v dialogovém okně; jinak NEPRAVDA.
CPrintDialogEx::P rintCurrentPage
Voláním této funkce DoModal
určíte, jestli se má vytisknout aktuální stránka v dokumentu.
BOOL PrintCurrentPage() const;
Návratová hodnota
TRUE, pokud je v dialogovém okně tisku vybrána možnost Tisk aktuální stránky ; jinak NEPRAVDA.
CPrintDialogEx::P rintRange
Zavoláním této funkce DoModal
určíte, jestli se má vytisknout jenom rozsah stránek v dokumentu.
BOOL PrintRange() const;
Návratová hodnota
PRAVDA, pokud se má vytisknout pouze rozsah stránek v dokumentu; jinak NEPRAVDA.
Poznámky
Zadané rozsahy stránek lze určit z m_pdex (viz nPageRanges
, nMaxPageRanges
a lpPageRanges
ve struktuře PRINTDLGEX v sadě Windows SDK).
CPrintDialogEx::P rintSelection
Voláním této funkce DoModal
určíte, zda se mají vytisknout pouze aktuálně vybrané položky.
BOOL PrintSelection() const;
Návratová hodnota
TRUE, pokud mají být vytištěny pouze vybrané položky; jinak NEPRAVDA.
Viz také
CCommonDialog – třída
Graf hierarchie
CPrintInfo – struktura