Überblick

Folgendes Prinzip steckt hinter den Begriffen "Callbacks und Notifications": wenn List & Label etwas nicht weiß, fragt es einfach Ihr Programm. Sie müssen nicht alle Antworten vorprogrammieren, sondern nur die, zu denen Sie Anfragen ausdrücklich wünschen.

Beispielsweise gibt es programmdefinierbare Objekte sog. User-Objekte, die von List & Label wie eine "Blackbox" behandelt werden. Wenn List & Label solch ein Objekt ausgeben muss, wendet es sich an Ihr Programm mit der Bitte, diese Aufgabe durchzuführen. Diese Art "Objekt-Container" kann verwendet werden, um Sonderwünsche nach speziellen Objekten, beispielsweise extern erstellte Charts, erfüllen zu können. Sie müssen hier keine komplette Schnittstelle, sondern nur eine einzige Routine zur Verfügung stellen.

Aber auch bei der Datenausgabe kann etwas gezaubert werden - über die Callback-Möglichkeit kann man Daten auf eine Seite hinzufügen, die vom Programm gesteuert sind (und somit vom Benutzer auch nicht im Designer entfernbar), man kann Objekte kurzerhand verstecken (das kann man aber auch über LlPrintEnableObject() oder die Darstellungsbedingung eines Objekts) oder objektspezifische Bemalung ausgeben.

Um Callbacks/Events zu nutzen, muss eine der folgenden Möglichkeiten implementiert werden:

      man definiert eine Callback-Routine, deren Adresse man List & Label über LlSetNotificationCallback() mitteilt, oder

      man reagiert auf von List & Label gesendete Nachrichten (Windows-Messages). Diese werden von List & Label an das Fenster, das bei LlDefineLayout() und LlPrintWithBoxStart() angegeben wird, geschickt.

In beiden Fällen bekommt man dann ausführlichere Informationen über die durchzuführende Aufgabe.

Die nachfolgenden Kapitel beschreiben, wie man eine solche Callback Routine implementiert. Eine Übersicht über alle verfügbaren Callbacks finden Sie in Kapitel Referenz der Callback-Notifications.