Aufgabe:
Ermöglicht es, zusätzliche Zeichnungen im Etiketten- oder Karteikarten-Projekt auszugeben.
Dieser Callback wird nur bei Etiketten- und Karteikartenprojekten ausgelöst, bei Listenobjekten verwenden Sie anstatt dessen LL_CMND_PAGE.
Aktivierung:
LlSetOption(hJob,LL_OPTION_CALLBACKMASK,<andere Flags> | LL_CB_PROJECT);
Parameter:
lParam zeigt auf eine scLlProject-Struktur:
_nSize: Größe der Struktur, sizeof(scLlProbject)
_bPreDraw: TRUE bei Aufruf, bevor List & Label die Seite zeichnet, FALSE bei Aufruf, nachdem List & Label die Seite gezeichnet hat.
_bDesignerPreview: TRUE, wenn der Aufruf vom Designer-Preview stattfindet, FALSE, wenn der Aufruf während des Echtdaten-Preview oder des Drucks stattfindet.
_hPaintDC: Device Context für die Ausgaben
_hRefDC: Device Context für Referenzen
_rcPaint: Rechteck, in dem das Projekt gezeichnet werden soll. Der Mapping-Mode ist in der eingestellten Einheit, z. B. mm/100.
Rückgabewert (_lResult):
0
Hinweise:
In diesem Callback darf keine List & Label-Funktion aufgerufen werden, die Ausgaben zur Folge hat (LlPrint(), etc.)! Funktionen wie LlPrintGetCurrentPage() oder LlPrintGetOption() oder auch LlPrintEnableObject() sind erlaubt.
Siehe: Hinweise zur Benutzung von GDI-Objekten.
Diese Funktion wird pro Seite zwei Mal aufgerufen, einmal mit _bPreDraw = TRUE, dann mit _bPreDraw = FALSE.
Beispiel:
case LL_CMND_PROJECT:
pSCP =
(PSCLLPROJECT)pSC->_lParam;
if
(pSCP->_bPreDraw)
{
FillRect(pSCL->_hPaintDC, pSCL->_rcPaint,
GetStockObject(LTGRAY_BRUSH));
}
break;