LPPAGEPAINTHOOK, fonction de rappel (commdlg.h)

Reçoit des messages qui vous permettent de personnaliser le dessin de l’exemple de page dans la boîte de dialogue Mise en page . La procédure de raccordement PagePaintHook est une fonction de rappel définie par l’application ou définie par la bibliothèque utilisée avec la fonction PageSetupDlg .

Le type LPPAGEPAINTHOOK définit un pointeur vers cette fonction de rappel. PagePaintHook est un espace réservé pour le nom de fonction défini par l’application ou défini par la bibliothèque.

Syntaxe

LPPAGEPAINTHOOK Lppagepainthook;

UINT_PTR Lppagepainthook(
  HWND unnamedParam1,
  UINT unnamedParam2,
  WPARAM unnamedParam3,
  LPARAM unnamedParam4
)
{...}

Paramètres

unnamedParam1

Handle de la boîte de dialogue Mise en page .

unnamedParam2

Identificateur du message reçu.

unnamedParam3

Informations supplémentaires sur le message. La signification exacte dépend de la valeur du paramètre unnamedParam2 .

unnamedParam4

Informations supplémentaires sur le message. La signification exacte dépend de la valeur du paramètre unnamedParam2 .

Valeur retournée

Si la procédure de raccordement renvoie TRUE pour l’un des trois premiers messages d’une séquence de dessin (WM_PSD_PAGESETUPDLG, WM_PSD_FULLPAGERECT ou WM_PSD_MINMARGINRECT), la boîte de dialogue n’envoie plus de messages et ne dessine pas dans l’exemple de page jusqu’à la prochaine fois que le système devra redessiner l’exemple de page. Si la procédure de raccordement retourne FALSE pour les trois messages, la boîte de dialogue envoie les messages restants de la séquence de dessin.

Si la procédure de raccordement retourne TRUE pour l’un des messages restants dans une séquence de dessin, la boîte de dialogue ne dessine pas la partie correspondante de l’exemple de page. Si la procédure de raccordement retourne FALSE pour l’un de ces messages, la boîte de dialogue dessine cette partie de l’exemple de page.

Remarques

La boîte de dialogue Mise en page inclut une image d’un exemple de page qui montre comment les sélections de l’utilisateur affectent l’apparence de la sortie imprimée. L’image se compose d’un rectangle qui représente le type de papier ou d’enveloppe sélectionné, avec un rectangle en pointillés représentant les marges actuelles et des caractères partiels (texte grec) pour montrer à quoi ressemble le texte sur la page imprimée. Lorsque vous utilisez la fonction PageSetupDlg pour créer une boîte de dialogue Mise en page , vous pouvez fournir une procédure de hook PagePaintHook pour personnaliser l’apparence de l’exemple de page.

Pour activer la procédure de raccordement, utilisez la structure PAGESETUPDLG que vous avez passée à la fonction de création. Spécifiez le pointeur vers la procédure de raccordement dans le membre lpfnPagePaintHook et spécifiez l’indicateur PSD_ENABLEPAGEPAINTHOOK dans le membre Flags .

Chaque fois que la boîte de dialogue est sur le point de dessiner le contenu de l’exemple de page, la procédure de raccordement reçoit les messages suivants dans l’ordre dans lequel ils sont répertoriés.

Message Signification
WM_PSD_PAGESETUPDLG La boîte de dialogue est sur le point de dessiner l’exemple de page. La procédure de raccordement peut utiliser ce message pour préparer le dessin du contenu de l’exemple de page.
WM_PSD_FULLPAGERECT La boîte de dialogue est sur le point de dessiner l’exemple de page. Ce message spécifie le rectangle englobant de l’exemple de page.
WM_PSD_MINMARGINRECT La boîte de dialogue est sur le point de dessiner l’exemple de page. Ce message spécifie le rectangle de marge.
WM_PSD_MARGINRECT La boîte de dialogue est sur le point de dessiner le rectangle de marge.
WM_PSD_GREEKTEXTRECT La boîte de dialogue est sur le point de dessiner le texte grec à l’intérieur du rectangle de marge.
WM_PSD_ENVSTAMPRECT La boîte de dialogue est sur le point de dessiner dans le rectangle d’empreinte d’enveloppe d’une page d’exemple d’enveloppe. Ce message est envoyé uniquement pour les enveloppes.
WM_PSD_YAFULLPAGERECT La boîte de dialogue est sur le point de dessiner la partie d’adresse de retour d’un exemple de page d’enveloppe. Ce message est envoyé pour les enveloppes et autres formats de papier.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête commdlg.h (inclure Windows.h)

Voir aussi

Bibliothèque de boîtes de dialogue commune

Conceptuel

PAGESETUPDLG

PageSetupDlg

Référence