MFC中给图形填充颜色的彩色条怎么画

我想让每个实测数据对应一种颜色,所用的颜色用彩色条显示出来,请问该怎么做?... 我想让每个实测数据对应一种颜色,所用的颜色用彩色条显示出来,请问该怎么做? 展开
 我来答
hw584521314
2013-01-15 · TA获得超过120个赞
知道小有建树答主
回答量:135
采纳率:50%
帮助的人:32.1万
展开全部
画各个不同的直线 类似坐标上画线? 建立画笔CPen pen(RGB(255,0,0));//红色画笔
然后调用DC的 MoveTo 和Lineto 以及polyLine 这些画直线的函数
bhtzu
推荐于2016-06-19 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4075万
展开全部
如果在View里面画彩条,直接FillSolidRect就可以了
也可以使用工具条按钮,按钮上直接画上颜色。
各种颜色的取值用一个COLORREF结构变量保存在类成员变量就ok
追问

我说的是这种的彩色条,不是给按钮的。我现在可以把三条曲线画出来,接下来该给里面填充颜色了。当然,每个位置填充颜色的值有对应的数据(这个数据挺多的,不可能都通过手动赋值,应该给个最大值最小值然后直接自动对应吧),求大神指点

追答
如果不使用OpenGL,只用标准MFC,那么图中下方的渐变条,只能通过循环来绘制。
上面的图案,如果每个区域内的颜色不是纯色,那么也只能通过循环语句实现。
思路是这样的:
一般先建立内存DC绘制,这样可以避免界面刷新缓慢;
使用CRgn类或者CRect类记录绘制区域
如果是X轴渐变,那么通过X轴范围进行循环,计算范围边界判断,通过画X个1宽Y(n)长的线段或者矩形实现:
FillSolidRect(xi,ytop,1,yhigh,RGB(Ri,Gi,Bi+i));
大概就是这个样子,百度搜索“渐变条 VC”或者“颜色棒”可以找到可以参考的代码示例。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式