CPrintDialog

Klasa CPrintDialog hermetyzuje usług dostarczanych przez wspólne okno dialogowe systemu Windows do drukowania. Wspólne oknach dialogowych drukowania umożliwiają łatwe do wykonania wydruku i ustawienia wydruku oknach dialogowych w sposób zgodny z normami systemu Windows.

Jeśli chcesz, możesz polegać ram do obsługi wielu aspektów procesu drukowania dla aplikacji. W tym przypadku ramach automatycznie wyświetla okno dialogowe wspólnego systemu Windows do drukowania. Można również mają uchwyt ramy drukowania dla aplikacji, ale zastąpić wspólne okno dialogowe Drukuj z własne okno dialogowe drukowania. Aby uzyskać więcej informacji na temat używania ramy do obsługi zadań drukowania, zobacz artykuł drukowania w Visual C++ Programmer's Guide.

Jeśli chcesz, aby aplikacja do obsługi drukowania bez zaangażowania zasad ramowych, można użyć klasy CPrintDialog „tak jak jest"z konstruktora pod warunkiem lub pochodną klasy okno dialogowe CPrintDialog i zapisu konstruktora do własnych potrzeb. W każdym z tych przypadków tych okien dialogowych postąpi jak standardowy MFC oknach dialogowych w ponieważ pochodzą one z klasy CCommonDialog.

Aby użyć obiektu CPrintDialog , należy najpierw utworzyć obiekt za pomocą konstruktora CPrintDialog . Po oknie dialogowym został wybudowany, można ustawić lub modyfikować wartości w strukturze m_pd zainicjować wartości formantów okna dialogowego. Struktura m_pd jest typu PRINTDLG. Więcej informacji na temat tej struktury na ten temat można znaleYć w dokumentacji zestawu SDK Win32.

Jeśli nie dostarczają swoje własne uchwyty w m_pd dla członków pole hDevMode i hDevNames , pamiętaj wywołać funkcję Windows GlobalFree dla tych uchwytów, po wykonaniu tych czynności okno dialogowe. Korzystając z zasad ramowych ustawienia wydruku wykonania przez CWinApp::OnFilePrintSetup, ma wolne od tych uchwytów. Uchwyty są utrzymywane przez CWinApp i są uwolnione w CWinAppdestruktor. Jest tylko wolne tych uchwytów, korzystając z CPrintDialog autonomiczne.

Po inicjowanie formantów w oknie dialogowym, wywołać funkcję Państwa DoModal , aby wyświetlić okno dialogowe i umożliwia użytkownikowi wybranie opcji drukowania. DoModal zwraca, czy wybranych przez użytkownika, przycisk OK (IDOK) lub przycisk Anuluj (IDCANCEL).

Jeśli DoModal zwraca IDOK, można jedną z funkcji członek CPrintDialogdo pobrania informacji o wprowadzania przez użytkownika.

Funkcja Państwa CPrintDialog::GetDefaults jest przydatna do pobierania bieżących ustawień domyślnych drukarki bez wyświetlania okna dialogowego. Ta funkcja Członkowskie wymaga bez interakcji użytkownika.

Można użyć funkcji systemu Windows CommDlgExtendedError , do ustalenia, czy wystąpił błąd podczas inicjowania okna dialogowego oraz aby dowiedzieć się więcej o błędzie. Aby uzyskać więcej informacji o tej funkcji można znaleźć w dokumentacji zestawu SDK Win32.

CPrintDialog opiera się na COMMDLG.Plik DLL, dostarczany z systemem Windows w wersji 3.1 i później.

Aby dostosować okna dialogowego, pochodną klasy CPrintDialog, dostarczają szablonu niestandardowe okna dialogowe i dodać mapę wiadomości do przetwarzania komunikatów powiadomienia z rozszerzonej kontroli. Komunikaty nieprzetworzonych powinny być przekazywane do klasy bazowej. Dostosowywanie funkcji hak nie jest wymagane.

Aby przetwarzać tej samej wiadomości inaczej zależności czy jest okno dialogowe Drukuj lub ustawienia wydruku, musi pochodzić klasy w każdym oknie dialogowym. Należy również zastąpić funkcję Windows AttachOnSetup , która obsługuje tworzenie nowe okno dialogowe, gdy wybrany jest przycisk Ustawienia wydruku w oknie dialogowym Drukuj.

Aby uzyskać więcej informacji na temat używania CPrintDialog, zobacz Wspólne okno dialogowe klas w Visual C++ Programmer's Guide.

# include lt;afxdlgs.h>

Członkowie klasy |nbsp; Klasa podstawowa | Wykres hierarchii

Próbki  Próbki MFC DIBLOOK

Zobacz też CPrintInfo

Index