Freigeben über


IMAGELISTDRAWPARAMS-Struktur (commctrl.h)

Enthält Informationen zu einem Bildlisten-Draw-Vorgang und wird mit der Funktion "IImageList::D raw " verwendet.

Syntax

typedef struct _IMAGELISTDRAWPARAMS {
  DWORD      cbSize;
  HIMAGELIST himl;
  int        i;
  HDC        hdcDst;
  int        x;
  int        y;
  int        cx;
  int        cy;
  int        xBitmap;
  int        yBitmap;
  COLORREF   rgbBk;
  COLORREF   rgbFg;
  UINT       fStyle;
  DWORD      dwRop;
  DWORD      fState;
  DWORD      Frame;
  COLORREF   crEffect;
} IMAGELISTDRAWPARAMS, *LPIMAGELISTDRAWPARAMS;

Elemente

cbSize

Typ: DWORD-

Die Größe dieser Struktur in Byte.

himl

Typ: HIMAGELIST

Ein Handle für die Bildliste, die das zu zeichnende Bild enthält.

i

Typ: int

Der nullbasierte Index des zu zeichnenden Bilds.

hdcDst

Typ: HDC

Ein Handle für den Zielgerätekontext.

x

Typ: int

Die x-Koordinate, die angibt, wo das Bild gezeichnet wird.

y

Typ: int

Die y-Koordinate, die angibt, wo das Bild gezeichnet wird.

cx

Typ: int

Ein Wert, der die Anzahl der zu zeichnenden Pixel angibt, relativ zur oberen linken Ecke des Zeichnungsvorgangs, wie durch xBitmap und yBitmap angegeben. Wenn cx und cy null sind, zeichnet Draw den gesamten gültigen Abschnitt. Die Methode stellt nicht sicher, dass die Parameter gültig sind.

cy

Typ: int

Ein Wert, der die Anzahl der zu zeichnenden Pixel angibt, relativ zur oberen linken Ecke des Zeichnungsvorgangs, wie durch xBitmap und yBitmap angegeben. Wenn cx und cy null sind, zeichnet Draw den gesamten gültigen Abschnitt. Die Methode stellt nicht sicher, dass die Parameter gültig sind.

xBitmap

Typ: int

Die x-Koordinate, die die obere linke Ecke des Zeichnungsvorgangs in Bezug auf das Bild selbst angibt. Pixel des Bilds links von xBitmap und oberhalb von yBitmap werden nicht angezeigt.

yBitmap

Typ: int

Die y-Koordinate, die die obere linke Ecke des Zeichnungsvorgangs in Bezug auf das Bild selbst angibt. Pixel des Bilds links von xBitmap und oberhalb von yBitmap werden nicht angezeigt.

rgbBk

Typ: COLORREF

Die Hintergrundfarbe des Bilds. Dieser Parameter kann ein anwendungsdefinierter RGB-Wert oder einer der folgenden Werte sein.

Wert Bedeutung
CLR_DEFAULT
Die Standardhintergrundfarbe. Das Bild wird mithilfe der Hintergrundfarbe der Bildliste gezeichnet.
CLR_NONE
Keine Hintergrundfarbe. Das Bild wird transparent gezeichnet.

rgbFg

Typ: COLORREF

Die Vordergrundfarbe des Bilds. Dieses Element wird nur verwendet, wenn fStyle das ILD_BLEND25- oder ILD_BLEND50 Flag enthält. Dieser Parameter kann ein anwendungsdefinierter RGB-Wert oder einer der folgenden Werte sein:

Wert Bedeutung
CLR_DEFAULT
Die Standard-Vordergrundfarbe. Das Bild wird mit der Systemmarkierungsfarbe als Vordergrundfarbe gezeichnet.
CLR_NONE
Keine Mischungsfarbe. Das Bild wird mit der Farbe des Zielgerätekontexts kombiniert.

fStyle

Typ: UINT

Ein Kennzeichen, das den Zeichenstil und optional das Überlagerungsbild angibt. Informationen zum Overlaybild finden Sie im Abschnitt "Kommentare" am Ende dieses Themas. Dieses Element kann ein oder mehrere Bildlisten-Zeichnungskennzeichnungen enthalten.

dwRop

Typ: DWORD-

Ein Wert, der einen Rastervorgangscode angibt. Diese Codes definieren, wie die Farbdaten für das Quellrechteck mit den Farbdaten für das Zielrechteck kombiniert werden, um die endgültige Farbe zu erzielen. Dieses Element wird ignoriert, wenn fStyle nicht das ILD_ROP Flag enthält. Einige gängige Rastervorgangscodes umfassen:

Wert Bedeutung
SCHWÄRZE
Füllt das Zielrechteck mithilfe der Farbe, die index null in der physischen Palette zugeordnet ist. (Diese Farbe ist schwarz für die standard physische Palette.)
DSTINVERT
Umkehrt das Zielrechteck.
MERGECOPY
Führt die Quellrechteckfarben mit dem angegebenen Muster mithilfe des booleschen AND-Operators zusammen.
MERGEPAINT
Führt die invertierten Quellrechteckfarben mit den Zielrechteckfarben mithilfe des booleschen OR-Operators zusammen.
NOTSRCCOPY
Kopiert das invertierte Quellrechteck an das Ziel.
NOTSRCERASE
Kombiniert die Quell- und Zielrechteckfarben mithilfe des booleschen OR-Operators . Invertiert die resultierende Farbe.
PATCOPY
Kopiert das angegebene Muster in die Zielbitmap.
PATINVERT
Kombiniert die angegebenen Musterfarben mit den Zielrechteckfarben mithilfe des booleschen XOR-Operators .
PATPAINT
Kombiniert die Musterfarben mit den invertierten Quellrechteckfarben und kombiniert das Ergebnis mit den Zielrechteckfarben mithilfe des booleschen OR-Operators .
SRCAND
Kombiniert die Quell- und Zielrechteckfarben mithilfe des booleschen AND-Operators .
SRCCOPY
Kopiert das Quellrechteck direkt in das Zielrechteck.
SRCERASE
Kombiniert die invertierten Farben des Zielrechtecks mit den Quellrechteckfarben mithilfe des booleschen AND-Operators .
SRCINVERT
Kombiniert die Quell- und Zielrechteckfarben mithilfe des booleschen XOR-Operators .
SRCPAINT
Kombiniert die Quell- und Zielrechteckfarben mithilfe des booleschen OR-Operators .
WEIßE
Füllt das Zielrechteck mithilfe der Farbe aus, die index 1 in der physischen Palette zugeordnet ist. Diese Farbe ist weiß für die standard physische Palette.

fState

Typ: DWORD-

Ein Kennzeichen, das den Zeichnungszustand angibt. Dieses Element kann ein oder mehrere Bildlistenstatuskennzeichnungen enthalten. Sie müssen comctl32.dll Version 6 verwenden, um dieses Mitglied zu verwenden. Weitere Informationen finden Sie in den Hinweisen.

Frame

Typ: DWORD-

Wird mit dem Alphamischungseffekt verwendet.

Bei Verwendung mit ILS_ALPHA enthält dieses Element den Wert für den Alphakanal. Dieser Wert kann zwischen 0 und 255 sein, wobei 0 vollständig transparent ist und 255 vollständig undurchsichtig ist.

Sie müssen comctl32.dll Version 6 verwenden, um dieses Mitglied zu verwenden. Weitere Informationen finden Sie in den Hinweisen.

crEffect

Typ: DWORD-

Eine Farbe, die für die Leucht- und Schatteneffekte verwendet wird. Sie müssen comctl32.dll Version 6 verwenden, um dieses Mitglied zu verwenden. Weitere Informationen finden Sie in den Hinweisen.

Bemerkungen

Ein Überlagerungsbild ist ein Bild, das über dem primären Bild gezeichnet wird, das im i-Element dieser Struktur angegeben ist. Um ein Überlagerungsbild anzugeben, verwenden Sie den bitweisen OR-Operator , um FStyle mit dem INDEXTOOVERLAYMASK-Makro zu kombinieren, und übergeben Sie den 1-basierten Index des Überlagerungsbilds im Makro. Dieses Bild muss zuvor als Überlagerungsbild mit der ImageList_SetOverlayImage-API angegeben worden sein.

Um das Überlagerungsbild aus dem fStyle zu extrahieren, verwenden Sie den bitweisen AND-Operator , um FStyle mit dem ILD_OVERLAYMASK Wert zu maskieren.

Comctl32.dll Version 6 ist nicht weiterverteilbar. Um Comctl32.dll Version 6 zu verwenden, müssen Sie sie in einem Manifest angeben. Weitere Informationen zu Manifesten finden Sie unter Aktivieren von visuellen Formatvorlagen.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows Vista [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows Server 2003 [Nur Desktop-Apps]
Header commctrl.h (include Commctrl.h)