Structure LOGBRUSH (wingdi.h)
La structure LOGBRUSH définit le style, la couleur et le motif d’un pinceau physique. Il est utilisé par les fonctions CreateBrushIndirect et ExtCreatePen .
Syntaxe
typedef struct tagLOGBRUSH {
UINT lbStyle;
COLORREF lbColor;
ULONG_PTR lbHatch;
} LOGBRUSH, *PLOGBRUSH, *NPLOGBRUSH, *LPLOGBRUSH;
Membres
lbStyle
Style de pinceau. Le membre lbStyle doit être l’un des styles suivants.
Valeur | Signification |
---|---|
BS_DIBPATTERN | Pinceau de modèle défini par une spécification bitmap indépendante du périphérique (DIB). Si lbStyle est BS_DIBPATTERN, le membre lbHatch contient un handle pour un DIB compressé. Pour plus d’informations, consultez discussion dans lbHatch. |
BS_DIBPATTERN8X8 | Voir BS_DIBPATTERN. |
BS_DIBPATTERNPT | Pinceau de modèle défini par une spécification bitmap indépendante du périphérique (DIB). Si lbStyle est BS_DIBPATTERNPT, le membre lbHatch contient un pointeur vers un DIB compressé. Pour plus d’informations, consultez discussion dans lbHatch. |
BS_HATCHED | Brosse à hachure. |
BS_HOLLOW | Pinceau creux. |
BS_NULL | Identique à BS_HOLLOW. |
BS_PATTERN | Pinceau de modèle défini par une bitmap de mémoire. |
BS_PATTERN8X8 | Voir BS_PATTERN. |
BS_SOLID | Pinceau uni. |
lbColor
Couleur dans laquelle le pinceau doit être dessiné. Si lbStyle est le style BS_HOLLOW ou BS_PATTERN, lbColor est ignoré.
Si lbStyle est BS_DIBPATTERN ou BS_DIBPATTERNPT, le mot d’ordre inférieur de lbColor spécifie si les membres bmiColors de la structure BITMAPINFO contiennent des valeurs ou des index (RVB) rouges, verts, bleus (RVB) explicites dans la palette logique actuellement réalisée. Le membre lbColor doit être l’une des valeurs suivantes.
Valeur | Signification |
---|---|
DIB_PAL_COLORS | La table de couleurs se compose d’un tableau d’index 16 bits dans la palette logique actuellement réalisée. |
DIB_RGB_COLORS | La table de couleurs contient des valeurs RVB littérales. |
Si lbStyle est BS_HATCHED ou BS_SOLID, lbColor est une valeur de couleur COLORREF . Pour créer une valeur de couleur COLORREF , utilisez la macro RVB .
lbHatch
Un style de trappe. La signification dépend du style de pinceau défini par lbStyle.
Si lbStyle est BS_DIBPATTERN, le membre lbHatch contient un handle pour un DIB compressé. Pour obtenir ce handle, une application appelle la fonction GlobalAlloc avec GMEM_MOVEABLE (ou LocalAlloc avec LMEM_MOVEABLE) pour allouer un bloc de mémoire, puis remplit la mémoire avec la DIB compressée. Une DIB empaquetée se compose d’une structure BITMAPINFO immédiatement suivie du tableau d’octets qui définissent les pixels de la bitmap.
Si lbStyle est BS_DIBPATTERNPT, le membre lbHatch contient un pointeur vers un DIB compressé. Le pointeur dérive du bloc de mémoire créé par LocalAlloc avec LMEM_FIXED défini ou par GlobalAlloc avec GMEM_FIXED défini, ou il s’agit du pointeur retourné par un appel comme LocalLock (handle_to_the_dib). Une DIB empaquetée se compose d’une structure BITMAPINFO immédiatement suivie du tableau d’octets qui définissent les pixels de la bitmap.
Si lbStyle est BS_HATCHED, le membre lbHatch spécifie l’orientation des lignes utilisées pour créer la trappe. Il peut avoir l’une des valeurs suivantes.
Valeur | Signification |
---|---|
HS_BDIAGONAL | Une trappe de 45 degrés vers le haut, de gauche à droite |
HS_CROSS | Hachure horizontale et verticale |
HS_DIAGCROSS | 45 degrés de crosshatch |
HS_FDIAGONAL | Une trappe de 45 degrés vers le bas, de gauche à droite |
HS_HORIZONTAL | Hachure horizontale |
HS_VERTICAL | Trappe verticale |
Si lbStyle est BS_PATTERN, lbHatch est un handle de la bitmap qui définit le modèle. La bitmap ne peut pas être une bitmap de section DIB, qui est créée par la fonction CreateDIBSection .
Si lbStyle est BS_SOLID ou BS_HOLLOW, lbHatch est ignoré.
Remarques
Bien que lbColor contrôle la couleur de premier plan d’un pinceau de hachure, les fonctions SetBkMode et SetBkColor contrôlent la couleur d’arrière-plan.
Configuration requise
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
En-tête | wingdi.h (inclure Windows.h) |