WinAPI: CreateBrushIndirect - 根据画刷结构建立画刷

//声明:
CreateBrushIndirect(
  const p1: TLogBrush {画刷结构}
): HBRUSH;            {返回画刷句柄}

//TLogBrush 是 tagLOGBRUSH 结构的重定义:
tagLOGBRUSH = packed record
  lbStyle: UINT;     {画刷风格}
  lbColor: COLORREF; {颜色}
  lbHatch: Longint;  {阴影样式}
end;

//lbStyle 可选值:
BS_SOLID         = 0;
BS_NULL          = 1;
BS_HOLLOW        = BS_NULL;
BS_HATCHED       = 2;
BS_PATTERN       = 3;
BS_INDEXED       = 4;
BS_DIBPATTERN    = 5;
BS_DIBPATTERNPT  = 6;
BS_PATTERN8X8    = 7;
BS_DIBPATTERN8X8 = 8;
BS_MONOPATTERN   = 9;

//lbHatch 可选值:
HS_HORIZONTAL = 0;
HS_VERTICAL   = 1; 
HS_FDIAGONAL  = 2; 
HS_BDIAGONAL  = 3; 
HS_CROSS      = 4; 
HS_DIAGCROSS  = 5;

 
 
 
 
 

 

 

  

//举例:
procedure TForm1.FormPaint(Sender: TObject);
var
  b: TLogBrush;
  BrushHandle: HBRUSH;
begin
  b.lbStyle := BS_HATCHED;
  b.lbColor := clRed;
  b.lbHatch := HS_CROSS;

  BrushHandle := CreateBrushIndirect(b);
  Canvas.Brush.Handle := BrushHandle;
  FillRect(Canvas.Handle, ClientRect, BrushHandle);

  DeleteObject(BrushHandle);
end;

 
 
 
 
 

 

 

  

//效果图:
26153626_O2B9.png

转载于:https://my.oschina.net/hermer/blog/320291

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值