文档章节

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

涂孟超
 涂孟超
发布于 2014/09/26 15:36
字数 134
阅读 19
收藏 0
//声明:
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;
//效果图:

本文转载自:http://www.cnblogs.com/del/archive/2008/02/10/1066600.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
窗体操作:CBrush类

CBrush画刷定义了一种位图形式的像素,利用它可对区域内部填充颜色。 该类封装了Windows的图形设备接口(GDI)刷子。通过该类构造的CBrush对象可以传递给任何一个需要画刷的CDC成员函数。该画刷...

野渡书生
2016/03/11
13
0
第二章 2绘制线条简单图形

线条和形状 同Windows其它版本相比,Windows CE提供相当少的功能的领域之一就是基本线条绘制和形状绘制功能。用来创建复杂环形的Chord, Arc, 和Pie函数被去掉了。大部分使用"当前点[current ...

技术小胖子
2017/11/08
0
0
Direct2D教程(八)梯度色画刷

概述 单色画刷产生的颜色是单一的,比如一个红色画刷只能输出红色,而渐变画刷则不同,它可以输出多种颜色,这些颜色通常是连续的,从一个颜色平滑过渡到另一个颜色,看起来有渐变的效果。渐...

吞吞吐吐的
2017/08/08
0
0
【Visual C++】游戏开发笔记之四——游戏画面绘图(一)基本图形绘制

本系列文章由zhmxy555编写,转载请注明出处。 http://blog.csdn.net/zhmxy555/article/details/7333886 作者:毛星云 邮箱: happylifemxy@qq.com 欢迎邮件交流编程心得 从本篇文章开始笔锋一...

长平狐
2012/11/12
135
0
Genesis-3D新手入门——11.地形系统

地形系统 这是一个地形系统的实例,根据Genesis-3D参考手册中地形指南,创建出一个简单的Demo,帮助用户来了解地形系统的使用。 1.创建地形。 (1)点击菜单"工具"-->"地形"-->"新建地形"打开...

lengche
2014/02/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

KaliLinux常用服务配置教程DHCP服务工作流程

KaliLinux常用服务配置教程DHCP服务工作流程 DHCP服务工作流程如图1.1所示。 具体的工作流程如下所示: (1)DHCP客户端以广播的方式发出DHCP Discover报文。 (2)所有的DHCP服务器(DHCP ...

大学霸
5分钟前
0
0
Spring Junit单元测试配置

<dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.1.2.RELEASE</version></dependency><dependency> <group......

TonyTaotao
10分钟前
0
0
线程安全与非线程安全-个人理解

类的某个方法是线程安全的, 说明这个方法在并发执行中,从开始执行到执行完毕,都是同步的, 比如:之前做的并发数据导出,并发的查询数据库, 但是在写入excel的时候,需要做一个同步,因为...

Java搬砖工程师
12分钟前
0
0
如何提升JavaScript的任务效率?学会后教给你同事

本文由云+社区发表 一、概述 JavaScript 语言采用的是单线程模型,也就是说,所有任务只能在一个线程上完成,一次只能做一件事。前面的任务没做完,后面的任务只能等着。随着电脑计算能力的增...

腾讯云加社区
12分钟前
0
0
Hadoop运行在Kubernetes平台实践

Hadoop与Kubernetes就好像江湖里的两大绝世高手,一个是成名已久的长者,至今仍然名声远扬,一个则是初出茅庐的青涩少年,骨骼惊奇,不走寻常路,一出手便惊诧了整个武林。Hadoop与Kubernete...

微笑向暖wx
13分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部