MFC 颜色对话框
2016-06-27 09:09
531 查看
<1>CColorDialog类
其中有颜色对话框的所有操作,是模态的对话框<2>CColorDialog类的构造函数
CColorDialog( COLORREF clrInit = 0, DWORD dwFlags = 0, CWnd* pParentWnd = NULL ); 参数说明: clrInit:默认选择颜色的颜色值,类型为COLORREF,实际上就是unsigned long类型。如果没有设置它的值,则默认为RGB(0,0,0),即黑色。 注:RGB(r,g,b)是宏,可以计算颜色值。括号中的三个值分别为红、绿、蓝分量的值。 dwFlags:自定义颜色对话框功能和外观的属性值。详情可在MSDN中查阅。 pParentWnd:颜色对话框的父窗口的指针。
<3>获取颜色对话框中选中的颜色值
需要调用函数COLORREF GetColor( ) const;
BYTE GetRValue(DWORD rgb);
BYTE GetGValue(DWORD rgb);
BYTE GetBValue(DWORD rgb);
其中DWORD为Double Word,每一个word为2个字节长度,DWORD双字即为4字节,32位。
<4>实现
实现就非常简单了void C颜色对话框1Dlg::OnBnClickedButton1() { // TODO: 在此添加控件通知处理程序代码 COLORREF color = RGB(255, 0, 0); CColorDialog colorDlg(color); if (IDOK == colorDlg.DoModal()) { color = colorDlg.GetColor(); SetDlgItemInt(IDC_COLOR_EDIT, color); SetDlgItemInt(IDC_R_EDIT, GetRValue(color)); SetDlgItemInt(IDC_B_EDIT, GetBValue(color)); SetDlgItemInt(IDC_G_EDIT, GetGValue(color)); } }
相关文章推荐
- STL之multiset
- encrypt加密 decrypt解密 函数
- .Net Core[译文]
- R语言——Plot{graphics}
- 【初探Spring】------Spring IOC(三):初始化过程---Resource定位
- redis采用tcmalloc导致无法释放内存的问题
- union和union all的区别
- 【代码笔记】iOS-下拉菜单
- 【代码笔记】iOS-下拉菜单
- 同步IO/异步IO/阻塞IO/非阻塞IO
- 经典C算法收藏
- Javascript的this用法
- java线程详解
- 32位和64位的操作系统有哪些区别
- 设计模式
- 安卓屏幕适配全攻略一网打尽
- 每天一个Linux命令(22)--find命令详解
- 编写一个简易的留言薄,实现添加留言和显示留言内容的功能
- 字体使用sp、dp的区别
- mac OpenGL 开发环境搭建