例1:

void CTextDlg::OnPaint()
{
Graphics graphics(this->m_hWnd);

LinearGradientBrush linGrBrush(
  Point(0,0),
  Point(200,0),
  Color(255,255,0,0),
  Color(255,0,0,255));

graphics.FillRectangle(&linGrBrush, 0, 0, 200, 200);
}

例2:

Graphics graphics(dc.GetSafeHdc());
graphics.Clear(Color::White);

//定义三种参与渐变的色彩
Color colors[] =
{
Color::Red, // 红色
Color::Green,//过渡色为绿色
Color::Blue // 蓝色
};

float positions[] =
{
0.0f, // 由红色起
0.3f, // 绿色始于画刷长度的三分之一
1.0f // 到蓝色止
};

//构造一条从黑色到白色的渐变画刷
LinearGradientBrush linGrBrush(
Point(0, 0),
Point(180, 0),
Color::Black,Color::White);

//设置渐变画刷的多色渐变信息
//linGrBrush.InterpolationColors=clrBlend;
linGrBrush.SetInterpolationColors(colors, positions, 3);
//使用多色渐变画刷填充目标区域
graphics.FillRectangle(&linGrBrush, 0, 0, 180, 100);

//使用普通的方法实现多色渐变
//由红到绿,长度60
LinearGradientBrush linGrBrush1(
Point(0, 0),
Point(60, 0),
Color::Red,
Color::Green);

//由绿到蓝,长度120
LinearGradientBrush linGrBrush2(
Point(60, 0),
Point(181, 0),
Color::Green,
Color::Blue);

//分别使用两个画刷填充两个相邻区域,形成多色渐变
graphics.FillRectangle(&linGrBrush1, 0, 120, 60, 100);
graphics.FillRectangle(&linGrBrush2, 60, 120, 120, 100);

最新文章

  1. 跟vczh看实例学编译原理——一:Tinymoe的设计哲学
  2. 第一次部署Struts2时出现错误java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.class
  3. jquery指index
  4. 后缀名为properties,config和xml的文件内容读取
  5. Django初体验(一):自定义表单提交
  6. IOS第三方库 MARK
  7. CentOS 7.2 无法生成 coredump文件
  8. SQL Server 2008中的hierarchyid
  9. 【HDOJ】1709 The Balance
  10. C#中Socket用法,多个聊天和单一聊天。
  11. 超轻量级PHP SQL数据库框架
  12. JVM相关知识(1)
  13. Cocos2dx 学习笔记整理----在项目中使用图片(一)
  14. 玩玩微信公众号Java版之一:配置微信公众平台服务器信息
  15. KS检验统计量的扩展应用(CMap)
  16. MySQL操作与修改表
  17. Jenkins-2.154 windows平台部署 FAQ
  18. 最新webstorm
  19. C++中:(*p)++和*(p++)和*p++的区别
  20. 关于c++深拷贝与浅拷贝

热门文章

  1. APUE 3rd
  2. iOS DES ECB 模式加密
  3. Python过滤emoji
  4. Android Studio 之 打包项目生成APK
  5. Java Netty (1)
  6. node中__dirname、__filename、process.cwd()表示的路径
  7. VREP中使用其它Lua库
  8. 编程填空:左边i位取反
  9. [解决思路]ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file
  10. 转:OGRE 源码编译方法