Dostosowywanie przykładowa strona

Ustawienia strony , okno dialogowe zawiera obrazu strony próbki, która pokazuje, jak wybór użytkownika wpływają na wygląd wydruku. Obraz składa się z prostokąta, która reprezentuje wybrany typ papieru lub koperty, z linii kropkowanej prostokąt reprezentujący bieżące marginesy i znaki częściowe (tekst w języku greckim) pokazują, w jaki sposób tekst wygląda na drukowanej stronie.

Podczas wywoływania funkcji PageSetupDlg , można zapewnić procedurę haka PagePaintHook , aby dostosować wygląd strony próbki.

    Aby włączyć procedurę haka PagePaintHook
  1. Ustawić flagę PSD_ENABLEPAGEPAINTHOOK Członkowskich flag struktury PAGESETUPDLG.
  2. Określ adres procedura haka członka lpfnPagePaintHook.

Gdy okno dialogowe ma zwrócić zawartość strony próbki, procedura haka otrzymuje następujące komunikaty w takiej kolejności, w jakiej są one wymienione.

Komunikat Znaczenie
WM_PSD_PAGESETUPDLG Okno dialogowe ma zamiar narysować przykładową stronę. Procedura haka można użyć tej wiadomości na przygotowanie narysuj zawartość przykładowa strona.
WM_PSD_FULLPAGERECT Okno dialogowe ma zamiar narysować przykładową stronę. Komunikat ten określa prostokąta obwiedni przykładowa strona.
WM_PSD_MINMARGINRECT Okno dialogowe ma zamiar narysować przykładową stronę. Komunikat ten określa prostokąt marginesu.
WM_PSD_MARGINRECT Okno dialogowe ma narysować prostokąt marginesu.
WM_PSD_GREEKTEXTRECT Okno dialogowe ma narysować grecki tekst wewnątrz prostokąta marginesu.
WM_PSD_ENVSTAMPRECT Okno dialogowe ma zamiar rysować w prostokącie koperty pieczęć Koperta przykładowa strona. Ta wiadomość jest wysyłana do koperty tylko.
WM_PSD_YAFULLPAGERECT Okno dialogowe ma zwrócić część adresu zwrotnego Koperta przykładowa strona. Ta wiadomość jest wysyłana do kopert i inne rozmiary papieru.

Jeśli procedura haka zwraca wartość TRUE dla każdego z pierwszych trzech komunikatów sekwencji rysunku (WM_PSD_PAGESETUPDLG, WM_PSD_FULLPAGERECTlub WM_PSD_MINMARGINRECT) okna dialogowego wysyła nie więcej wiadomości i nie rysowania na stronie próbki do czasu system potrzebuje aby odświeżyć stronę próbki. Jeśli procedura haka zwraca wartość FALSE dla wszystkich trzech wiadomości, okno dialogowe wysyła pozostałe wiadomości rysunku sekwencji.

Jeśli procedura haka zwraca wartość TRUE dla każdego z pozostałych wiadomości w sekwencji rysunku, okno dialogowe nie wyciąga odpowiednich części strony próbki. Jeżeli procedura haka zwraca FALSE dla dowolnego z tych wiadomości, okno dialogowe rysuje część przykładowa strona.

Aby uniemożliwić oknie rysunku zawartość strony próbki, można ustawić flagę PSD_DISABLEPAGEPAINTING. Ta flaga nie wpływa na Twoje PagePaintHook procedura haka, które nadal odbiera wszystkie WM_PSD_ * wiadomości i może pobierać zawartość strony próbki.