社区
界面
帖子详情
请教,怎样在矩形区域填充渐变色,就像窗口标题栏
yayafu
2005-08-18 10:46:14
请教,怎样在矩形区域填充渐变色,就像窗口标题栏那样由深到浅,应该有个API函数吧
...全文
457
6
打赏
收藏
请教,怎样在矩形区域填充渐变色,就像窗口标题栏
请教,怎样在矩形区域填充渐变色,就像窗口标题栏那样由深到浅,应该有个API函数吧
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
summer0360
2005-08-20
打赏
举报
回复
mark
请问GradientFill具体怎么调用?
给个2,3句话的例子?
laogong165
2005-08-19
打赏
举报
回复
嘎嘎
kingsundy
2005-08-19
打赏
举报
回复
GradientFill
pomelowu
2005-08-18
打赏
举报
回复
GradientFill
i_noname
2005-08-18
打赏
举报
回复
把矩形分成N个小矩形,用渐变色对各个小矩形逐个填充。
void CProcessCtrl::DrawGradient(HDC pDC,const RECT& rectClient,const int & nMaxWidth) {
RECT rectFill; //显示区域
float fStep; //每一步的幅宽
HBRUSH hBrush; //显示的颜色画刷
int nRed = 0, nGreen=0, nBlue = 0;
float fRefStep = 0.0, fGreenStep=0.0, fBlueStep=0.0;
//得到不同颜色并相减,返回颜色之间的最大差值
nRed = (GetRValue(m_nShadowEndColor)-GetRValue(m_nShadowBeginColor));
nGreen = (GetGValue(m_nShadowEndColor)-GetGValue(m_nShadowBeginColor));
nBlue = (GetBValue(m_nShadowEndColor)-GetBValue(m_nShadowBeginColor));
//使进程条显示的总数 等于最大的颜色差值
int nSteps=max(abs(nRed),max(abs(nGreen),abs(nBlue)));
//确定每一颜色填充多大的矩形区域
//以下两种计算步长方式均成立,视个人喜好而定
//fStep = (float)rectClient.right / (float)nSteps;
fStep = (float)nMaxWidth / (float)nSteps;
//设置每一颜色填充的步数
fRefStep = nRed / (float)nSteps;
fGreenStep = nGreen / (float)nSteps;
fBlueStep = nBlue / (float)nSteps;
nRed = GetRValue(m_nShadowBeginColor);
nGreen = GetGValue(m_nShadowBeginColor);
nBlue = GetBValue(m_nShadowBeginColor);
//绘制颜色渐变的进程条
for(int nOnBand=0 ; nOnBand < nSteps ; nOnBand++)
{
//本质为使用一个一个的小RECT填充客户区,而每次填充使用不同的颜色(BRUSH),从而达到渐变的效果
::SetRect(&rectFill,
//填充矩形区域的左上角x,y和右下角x,y
(int)(nOnBand*fStep),
0,
(int)((nOnBand+1)*fStep),
rectClient.bottom+1);
hBrush = CreateSolidBrush(RGB(nRed + fRefStep*nOnBand,
nGreen + fGreenStep*nOnBand,
nBlue + fBlueStep*nOnBand));
HBRUSH oldBrush = (HBRUSH)::SelectObject(pDC, hBrush);
FillRect(pDC , &rectFill, hBrush);
::SelectObject(pDC, oldBrush);
DeleteObject(hBrush);
}
}
yll1986
2005-08-18
打赏
举报
回复
自己做一个渐变的位图,然后把它导入?哈哈!说笑
【计算机视觉】Python OpenCV 4高级编程与实战
本套课程主要讲解OpenCV 4 for Python的核心API的使用方法,并提供了大量的实战案例,课程的主要内容如下:OpenCV for Python的安装图像处理
色
彩空间通道Numpy与OpenCV的结合绘制图形阈值函数几何变换图像运算滤波器形态学方法图形检测匹配模板视频处理人脸识别效果图
Android shape绘制
矩形
边框线
渐变
色
项目当中UI出图如下: 本想着用shape去实现,可是shape
矩形
设置的
渐变
色
为
填充
色
,貌似这个效果没有思路解决,想到这里就去网上查阅相关的实现思路。经过大量的查阅之后发现好像没有用shape实现
矩形
边框线
渐变
色
的方案,后面我想想,大概很多人遇到这种情况是让UI切图去实现的吧。不轻易放弃的我还是决定自己尝试一下shape的解决方案,经过一番摸索,我觉得可以用ps图层的思路去解决这个问题。实现思路如下: 1.shape绘制第一层
矩形
的
填充
为
渐变
色
2.shape绘制第二层
矩形
的
填充
色
为白
色
,然后给
Matlab的
渐变
色
填充
(一)
Matlab的
渐变
色
填充
(一) 最近需要使用Matlab来制作一些图表,部分图表使用颜
色
填充
。网络资源好像对
渐变
色
填充
这件事都讲得语焉不详,或是比较复杂。所以决定自己写一点简化版的操作,让后续使用Matlab不多的朋友可以比较容易处理。 (1)图形准备 确定 x轴和y轴范围都是 [0,10],基本图形为10 ×10 的一个正方形。
色
系采用预定义的
色
阶图 spring...
Matlab不规则
区域
渐变
色
填充
及注意事项
来源 机器人工作空间着
色
,实现形象的展示。 matlab实现方法 这里介绍两个实现着
色
的函数,patch, fill。这两个函数具体使用方法查看帮助。 我使用的是patch。官方帮助文档上有一个示例如下 x = [2 5; 2 5; 8 8]; y = [4 0; 8 2; 4 0]; c = [0; 1]; figure patch(x,y,c) 我这里主要关注
渐变
色
填充
,也就是上面的c矩阵。他官方示例中只有几个点,看起来不明显,可以把要着
色
区域
划分密集些。下面是我自己的例子。 Z = [ tr
说说在 Canvas 中如何
填充
渐变
颜
色
渐变
颜
色
填充
方式有两种:线性或径向。 线性
渐变
填充
会创建一个水平 、 垂直或者对角线的
填充
图案。 径向
渐变
填充
会自中心点创建一个放射状
填充
图案。 1 线性
渐变
1.1 线性水平
渐变
(1)基本形状 Steve Fulton 与 Jeff Fulton 举了一个示例,来说明如何设置线性水平
渐变
。 //创建
渐变
对象 var gr = context.createLinearGradient(0, 0, 100, 0); //颜
色
断点 gr.addColorStop(0, 'rgb(255,0,0)');
界面
15,978
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章