关于MFC ColorButton Control的操作

        之前我取RGB值都是手动输入的,今天发现MFC ColorButton Control这个控件之后发现之前的做法真的是太low了。废话不多说,直接进入主题:

  • 先添加一个MFC ColorButton Control控件

MFC ColorButton Control

  • 给这个控件添加变量

添加变量

 注意变量类型一定要是CMFCColorButton类型。

CMFCColorButton

  • 添加消息处理事件(点击事件)

给控件添加BN_CLICKED事件:

BN_CLICKED

  • 代码补全:
//设置控件上显示的RGB
//m_color.SetColor(RGB(0xff, 0xff, 0xff));

//获取控件上选择的RGB
COLORREF color = m_color.GetColor();

//将获取到的COLORREF类型分解为uchar类型
BYTE r = GetRValue(color);
BYTE g = GetGValue(color);
BYTE b = GetBValue(color);

COLORREF其实是一个unsigned long类型的变量(32-bit)。

可以分解为3个uchar类型(8-bit)。

猜你喜欢

转载自blog.csdn.net/a1220364463/article/details/81778710