首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

GDI+渐变画刷如何实现两种以上颜色渐变

2012-01-30 
GDI+渐变画刷怎么实现两种以上颜色渐变?GDI+渐变画刷怎么实现两种以上颜色渐变?两种颜色的渐变很好做两种

GDI+渐变画刷怎么实现两种以上颜色渐变?
GDI+渐变画刷怎么实现两种以上颜色渐变?

两种颜色的渐变很好做
两种颜色以上的呢?

[解决办法]
Graphics g(lpDrawItemStruct-> hDC); //从hDC创建Graphics对象
Rect gRect(rc.left ,rc.top ,rc.Width (),rc.Height ());//从CRect创建Rect对象
Color colors[]={Color::Red ,Color::Yellow ,Color::Blue }; //定义3种颜色
REAL positions[] = {0.0f,0.3f,1.0f}; //定义3种颜色距离起点位置

//创建渐变画刷,初始的颜色值其实无效
LinearGradientBrush lbrush (gRect,Color::Green ,Color::Brown ,LinearGradientModeVertical);
lbrush.SetInterpolationColors (colors,positions,3); //定义多色渐变
g.FillRectangle (&lbrush,gRect); //绘制矩形区域

热点排行