LlDefineFieldExtHandle

Syntax:

INT LlDefineFieldExtHandle(HLLJOB hJob, LPCTSTR lpszName, HANDLE hContents, INT lPara, LPVOID lpPara);

Aufgabe:

Definiert ein Listenfeld und dessen Inhalt.

Parameter:

hJob: List & Label-Job-Handle

lpszName: Zeiger auf Zeichenkette mit Feldname

hContents: Handle vom Typ HMETAFILE, HENHMETAFILE, HBITMAP oder HICON.

lPara: LL_­DRAWING_­HMETA, LL_­DRAWING_­HEMETA, LL_­DRAWING_­HICON oder LL_­DRAWING_­HBITMAP

lpPara: für spätere Erweiterungen, muss NULL oder "" (Leerstring) sein (siehe LlDefineFieldExt())

Rückgabewert:

Fehlercode

Hinweise:

Es gelten die allgemeinen Hinweise von Kapitel Hinweise zu Tabellen-, Variablen- und Feldnamen.

Diese Funktion definiert ein Textfeld, sie kann beliebig mit den anderen LlDefineField...()-Funktionen gemischt werden.

Die von List & Label vorgegebenen Felder sind bei LlDefineField() aufgeführt.

Das Handle muss so lange gültig sein, wie es gebraucht wird, also während der gesamten Layout-Definition oder bis nach LlPrintFields() bzw. LlPrint().

Nach der Verwendung kann bzw. sollte es über die übliche Windows-API-Funktion gelöscht werden.

Beispiel:

HLLJOB hJob;
HMETAFILE hMeta;
HDC   hMetaDC;
INT   i;
hMetaDC = CreateMetaFile(NULL); // Fieberkurve
selectObject(hMetaDC,GetStockObject(NULL_­PEN));
Rectangle(hMetaDC, 0, 0, LL_­META_­MAXX, LL_­METY_­MAXY);
for (i = 0; i < 10; ++i)
{
   MoveTo(hMetaDC,0,MulDiv(i, LL_­META_­MAXY, 10));
   LineTo(hMetaDC,MulDiv(i, LL_­META_­MAXX, 100),
         MulDiv(i, LL_­META_­MAXY, 10);
}
MoveTo(hMetaDC, 0, MulDiv(((100*i) & 251) % 100, LL_­META_­MAXY,100));
for (i = 0; i < 10; ++i)
   LineTo(hMetaDC,MulDiv(i, LL_­META_­MAXX, 10),
         MulDiv(((100*i) & 251) % 100, LL_­META_­MAXY, 100));
hMeta = CloseMetaFile(hMetaDC);

hJob = LlJobOpen(0);
LlDefineFieldStart(hJob);
LlDefineField(hJob, "Name", "Normalverbraucher");
LlDefineField(hJob, "Vorname", "Otto");
LlDefineFieldExt(hJob, "Ort", "Konstanz", LL_­TEXT, NULL);
LlDefineFieldExtHandle(hJob, "Erfolgs-Chart", hMeta,
      LL_­DRAWING_­HMETA, NULL);
<... etc ...>
LlJobClose(hJob);
DeleteObject(hMeta);

Siehe auch:

LlDefineFieldExt, LlDefineFieldStart, LlDefineField, LL_OPTION_VARS­CASESENSITIVE