MFC应用实例:[23]颜色对话框选择颜色
1、新建一个基于对话框的应用程序,应用程序名称为ColorDialog。
![MFC应用实例:[23]颜色对话框选择颜色](https://exp-picture.cdn.bcebos.com/05a320a23a42a07afc934580673834bb18efc1da.jpg)
2、对对话框进行如下图的设计添加“颜色”,“退出”两个按钮,并对这两个按钮添加对应的响应函数。
![MFC应用实例:[23]颜色对话框选择颜色](https://exp-picture.cdn.bcebos.com/35fa07efa25f0c14a1f82b310d89a146b6b138db.jpg)
3、对应用程序进行初始化,初始化形成一个红色的椭圆。
在OnInitDialog()函数中添加一下代码:
crColor=RGB(255,0,0);//设置初始颜色
在OnPaint()函数中添加一下代码:
CBrush brush,*pOldBrush;
brush.CreateSolidBrush(crColor);
pOldBrush=dc.SelectObject(&brush);//载入刷子
dc.Ellipse(40,40,220,150);//绘制椭圆
//恢复设备上下文的原有画刷
dc.SelectObject(pOldBrush);
brush.DeleteObject();
注意要在此文档的上方加入COLORREF crColor;//填充颜色定义颜色
![MFC应用实例:[23]颜色对话框选择颜色](https://exp-picture.cdn.bcebos.com/7efc527c34b33c415e392af2887de137c8762edb.jpg)
4、在颜色按钮的响应函数OnColor()中添加一下代码:
void CColorDialogDlg::OnColor()
{
// TODO: Add your control notification handler code here
CColorDialog colordialog(crColor,CC_FULLOPEN);//初始化颜色对话框对象
if(colordialog.DoModal()==IDOK)//创建颜色对话框
{
crColor=colordialog.GetColor();//获取设置颜色
Invalidate(TRUE);//重绘窗口
}
}
![MFC应用实例:[23]颜色对话框选择颜色](https://exp-picture.cdn.bcebos.com/e076d77622bc7dc5bbe4d2ec5e460596b91429db.jpg)
5、程序运行如下:
![MFC应用实例:[23]颜色对话框选择颜色](https://exp-picture.cdn.bcebos.com/d4071b96b814f4d0cf803161cdfe474ec38323db.jpg)
6、使用颜色对话框选择绿色颜色后
![MFC应用实例:[23]颜色对话框选择颜色](https://exp-picture.cdn.bcebos.com/47bf594ec28333bfbb6cccfcdbb8b43ea9db1ddb.jpg)
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:180
阅读量:148
阅读量:26
阅读量:99
阅读量:54