现在的位置: 首页 > 综合 > 正文

C语言版GDI+应用例子 — 画刷

2013年08月26日 ⁄ 综合 ⁄ 共 3373字 ⁄ 字号 评论关闭

    GDI+提供了SolidBrush(实色刷)、HatchBrush(阴影刷)、TextureBrush(纹理刷)、LinearGradientBrush(渐变刷)和PathGradientBrush(路径刷)等五种画刷,在GDI+的C语言版本中,这些画刷的方法都以在原C++类类名为前缀,其中的LinearGradientBrush和PathGradientBrush分别简化为LineBrush和PathBrush。

    GDI+的画刷是GDI+绘制图形的基础,GDI+画笔也是依靠GDI+画刷形成的,熟练地运用GDI+画刷,可以使各种图像更加多姿多彩,也可以用它们来绘制Windows应用程序的各种控件的界面,MS的Office2003及以后的版本的Office程序界面都是使用GDI+绘制界面的典型例子。

    下面是一个用C语言改写的GDI+画刷的经典例子代码:

    例子代码使用的窗口框架代码和GDI+ C语言版本下载地址见《在C语言Windows应用程序中使用GDI+》。

    由于例子代码中作了详细的注释,而且这也是个GDI+经典例子,所以就不在此啰嗦了。

    顺便说一下,原GDI+ C++版本的Color类型在C版本中取消,需要用到颜色的地方直接使用ARGB类型,原Color类的一些方法还是保留了。

    下面是用VC2005编译运行例子的界面截图:

运行界面

    GDI+初学者要想熟练的掌握GDI+画刷,仅靠这个例子是远远不够的,必须多看看GDI+资料,多参考C++、C#等语言中运用GDI+的代码。关于GDI+画刷,我有几篇文章作了专门介绍,里面有更多使用画刷的例子,虽然是Delphi或者BCB写的,但原理是一样的,可供初学者参考:

GDI+ for VCL基础 -- 画刷之SolidBrush》,《GDI+ for VCL基础 -- 画刷之HatchBrush》,《GDI+ for VCL基础 -- 画刷之TextureBrush》,《GDI+ for VCL基础 -- 画刷之LinearGradientBrush》,《GDI+ for VCL基础 -- 画刷之PathGradientBrush》。

    指导和建议请来信:mao.maozefa@gmail.commaozefa@hotmail.com

【上篇】
【下篇】

抱歉!评论已关闭.