1. 生成颜色选择按钮
选择颜色的按钮在mfc9之前有许多自绘的,mfc9出来之后带来了一个强大的类CMFCColorButton。一切都可以那么漂亮~
先放一个按钮控件在对话框上
然后右键点击选择添加变量,类名不是CButton是CMFCColorButton。。
这时,按钮就变成颜色选择按钮,如图
可见就几种颜色供选择,这是默认的状态
现在看看有什么样式:
2.颜色选择按钮的属性
2.1 设置默认颜色(就是一开始显示时显示的颜色)
m_ColorPicker.EnableAutomaticButton(_T(
"默认"), RGB(
255,
0,
0));
这时就会多一个标题为“默认”的按钮
2.2 设置初始显示默认颜色
2.1虽然设置能选择默认,但是一开始还是黑色的下拉颜色,怎么设置开始就能显示默认的颜色呢
SetColor函数就是设置显示的颜色的
如:
m_ColorPicker.SetColor(RGB(
0,
123,
234));
想一开始就是默认颜色也可以只要如下就会有很不一样的效果
m_ColorPicker.SetColor((COLORREF)
-
1);
文字都会给你显示上去了
2.3 获取其它颜色
一般选择颜色时会有个自定义按钮或者其他颜色按钮,反正就是让用户自己选择喜欢的颜色的,可以使用EnableOtherButton函数来使这个按钮生效:
m_ColorPicker.EnableOtherButton(_T(
"自定义颜色"));
点击后就会出现颜色选择对话框了,这个颜色选择对话框还是很强大的
2.4 设置颜色列表的每行颜色显示个数
如下图所示颜色列表每行显示5个颜色,我们可以用SetColumnsNumber来任意调节颜色的显示个数
m_ColorPicker.SetColumnsNumber(
10);
3. 获取选中颜色GetColor
在其点击响应下如下获取颜色:
COLORREF color
=m_ColorPicker.GetColor();
if(color == - 1)
{
color =m_ColorPicker.GetAutomaticColor();
}
if(color == - 1)
{
color =m_ColorPicker.GetAutomaticColor();
}
这样就能获得你选择的颜色了