Partager via


CBrush::CBrush

Construit un objet CBrush.

CBrush( ); 
CBrush( 
   COLORREF crColor  
); 
CBrush( 
   int nIndex, 
   COLORREF crColor  
); 
explicit CBrush( 
   CBitmap* pBitmap  
);

Paramètres

  • crColor
    Spécifie la couleur de premier plan du pinceau comme couleur RVB. Si le pinceau est haché, ce paramètre spécifie la couleur de la marque de hachage.

  • nIndex
    Spécifie le style de hachure du pinceau. Il peut être l'une des valeurs suivantes :

    • Trappe de haut en bas d'HS_BDIAGONAL (de gauche à droite) à 45 degrés

    • Marque de hachage croisé horizontale et verticale d'HS_CROSS

    • Marque de hachage croisé d'HS_DIAGCROSS à 45 degrés

    • Trappe descendante d'HS_FDIAGONAL (de gauche à droite) à 45 degrés

    • Trappe horizontale d'HS_HORIZONTAL

    • Trappe de verticale d'HS_VERTICAL

  • pBitmap
    Les points à CBitmap objet qui spécifie une bitmap avec laquelle le pinceau peint.

Notes

CBrush a quatre constructeurs surchargés. Le constructeur sans argument construit un objet non initialisé d' CBrush qui doit être initialisé avant qu'il puisse être utilisé.

Si vous utilisez le constructeur sans argument, vous devez initialiser l'objet résultant d' CBrush avec CreateSolidBrush, CreateHatchBrush, CreateBrushIndirect, CreatePatternBrush, ou CreateDIBPatternBrush. Si vous utilisez l'un des constructeurs qui prend des arguments, aucune autre initialisation n'est nécessaire. Les constructeurs avec les arguments peuvent lever une exception si des erreurs se produisent, tandis que le constructeur sans argument réussit toujours.

Le constructeur avec un seul paramètre de COLORREF construit un pinceau uni avec la couleur spécifiée. La couleur spécifie une valeur RVB et peut être générée avec la macro d' RGB dans WINDOWS.H.

Le constructeur avec deux paramètres crée un pinceau à hachures. Le paramètre d' nIndex spécifie l'index d'un modèle haché. Le paramètre d' crColor spécifie la couleur.

Le constructeur avec un paramètre d' CBitmap construit un pinceau modélisée. Le paramètre identifie une bitmap. Il est supposé que la bitmap est créée à l'aide de CBitmap::CreateBitmap, de CBitmap::CreateBitmapIndirect, de CBitmap::LoadBitmap, ou de CBitmap::CreateCompatibleBitmap. La taille minimale pour une bitmap est utilisée dans un schéma de remplissage est 8 pixels par 8 pixels.

Exemple

// CBrush::CBrush.
CBrush brush1;   // Must initialize!
brush1.CreateSolidBrush(RGB(0, 0, 255));   // Blue brush.

CBrush* pTempBrush = NULL;
CBrush OrigBrush;

CRect rc;
GetClientRect(&rc);
ScreenToClient(&rc);

pTempBrush = (CBrush*)pDC->SelectObject(&brush1);
// Save original brush.
OrigBrush.FromHandle((HBRUSH)pTempBrush);

// Paint upper left corner with blue brush.
pDC->Rectangle(0, 0, rc.Width() / 2, rc.Height() / 2);

// These constructors throw resource exceptions. 
try
{
   // CBrush::CBrush(COLORREF crColor)
   CBrush brush2(RGB(255, 0, 0));   // Solid red brush. 

   // CBrush::CBrush(int nIndex, COLORREF crColor) 
   // Hatched green brush.
   CBrush brush3(HS_DIAGCROSS, RGB(0, 255, 0));

   // CBrush::CBrush(CBitmap* pBitmap)
   CBitmap bmp;
   // Load a resource bitmap.
   bmp.LoadBitmap(IDB_BRUSH);
   CBrush brush4(&bmp);

   pTempBrush = (CBrush*)pDC->SelectObject(&brush2);

   // Paint upper right corner with red brush.
   pDC->Rectangle(rc.Width() / 2, 0, rc.Width(),
   rc.Height() / 2);

   pTempBrush = (CBrush*)pDC->SelectObject(&brush3);

   // Paint lower left corner with green hatched brush.
   pDC->Rectangle(0, rc.Height() / 2, rc.Width() / 2,
   rc.Height());

   pTempBrush = (CBrush*)pDC->SelectObject(&brush4);

   // Paint lower right corner with resource brush.
   pDC->Rectangle(rc.Width() / 2, rc.Height() / 2,
      rc.Width(), rc.Height());
}
catch(CResourceException* e)
{
   e->ReportError();
   e->Delete();
}

// Reselect original brush into device context.
pDC->SelectObject(&OrigBrush);

Configuration requise

Header: afxwin.h

Voir aussi

Référence

CBrush, classe

Graphique de la hiérarchie

CBrush::CreateSolidBrush

CBrush::CreateHatchBrush

CBrush::CreateBrushIndirect

CBrush::CreatePatternBrush

CBrush::CreateDIBPatternBrush

CGdiObject::CreateStockObject