IMAGELISTDRAWPARAMS-Struktur (commctrl.h)

Enthält Informationen zu einem Bildlistenzeichnungsvorgang 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;

Member

cbSize

Typ: DWORD

Die Größe dieser Struktur in Bytes.

himl

Typ: HIMAGELIST

Ein Handle für die Bildliste, das 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 relativ zur oberen linken Ecke des Zeichnungsvorgangs angibt, wie in 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 relativ zur oberen linken Ecke des Zeichnungsvorgangs angibt, wie in 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, die sich links von xBitmap und oberhalb von yBitmap befinden, 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, die sich links von xBitmap und oberhalb von yBitmap befinden, 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 mit 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 flag ILD_BLEND25 oder ILD_BLEND50 enthält. Dieser Parameter kann ein anwendungsdefinierter RGB-Wert oder einer der folgenden Werte sein:

Wert Bedeutung
CLR_DEFAULT
Die Standardfarbe des Vordergrunds. Das Bild wird mit der Hervorhebungsfarbe des Systems als Vordergrundfarbe gezeichnet.
CLR_NONE
Keine Mischfarbe. Das Bild wird mit der Farbe des Zielgerätekontexts gemischt.

fStyle

Typ: UINT

Ein Flag, das den Zeichnungsstil und optional das Überlagerungsbild angibt. Informationen zum Überlagerungsbild finden Sie im Kommentarabschnitt am Ende dieses Themas. Dieses Element kann ein oder mehrere Zeichenflags für Bildlisten 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 erhalten. Dieser Member wird ignoriert, wenn fStyle das flag ILD_ROP nicht enthält. Einige gängige Raster-Vorgangscodes sind:

Wert Bedeutung
SCHWÄRZE
Füllt das Zielrechteck mit der Farbe aus, die index null in der physischen Palette zugeordnet ist. (Bei der physikalischen Standardpalette ist dies die Farbe Schwarz.)
DSTINVERT
Invertiert das Zielrechteck.
MERGECOPY
Führt die Quellrechteckfarben mithilfe des booleschen AND-Operators mit dem angegebenen Muster zusammen.
MERGEPAINT
Führt die invertierten Quellrechteckfarben mithilfe des booleschen OR-Operators mit den Zielrechteckfarben zusammen.
NOTSRCCOPY
Kopiert das invertierte Quellrechteck in das Ziel.
NOTSRCERASE
Kombiniert die Quell- und Zielrechteckfarben mithilfe des booleschen OR-Operators . Invertiert die resultierende Farbe.
PATCOPY
Kopiert das angegebene Muster in die Zielbitbitbit.
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 mit der Farbe aus, die Index 1 in der physischen Palette zugeordnet ist. Diese Farbe ist weiß für die standardmäßige physische Palette.

fState

Typ: DWORD

Ein Flag, das den Zeichnungszustand angibt. Dieser Member kann mindestens ein Imagelistenstatusflags enthalten. Sie müssen comctl32.dll Version 6 verwenden, um dieses Element 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 und 255 vollständig undurchsichtig ist.

Sie müssen comctl32.dll Version 6 verwenden, um dieses Element 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 Element 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. Verwenden Sie zum Angeben eines Überlagerungsbilds den bitweisen OR-Operator , um fStyle mit dem INDEXTOOVERLAYMASK-Makro zu kombinieren und dabei den 1-basierten Index des Überlagerungsbilds im Makro zu übergeben. Dieses Bild muss zuvor mithilfe der ImageList_SetOverlayImage-API als Überlagerungsbild 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 verteilbar. 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

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Kopfzeile commctrl.h (include Commctrl.h)