CDC* pDC = CDC::FromHandle(::GetDC(m_1.m_hWnd));
RECT rc;
m_1.GetClientRect(&rc);
pDC->FillRect(&rc, &CBrush(RGB(x,y,z)));
pDC->DeleteDC();
m_1是一个Button的控键Type为CButton  的变量
我是初学者,能不嫩详细点.

解决方案 »

  1.   

    1、m_1.m_hWnd:获取m_l这个按钮的句柄;
    2、::GetDC(m_1.m_hWnd):获取按钮句柄的DC,也就是用来绘图的东西;
    3、CDC* pDC = CDC::FromHandle(::GetDC(m_1.m_hWnd)):将获取的DC转换成DC的指针;
    4、RECT rc:定义一个矩形区;
    5、m_1.GetClientRect(&rc):获取按钮的区域,也就是按钮上的表面矩形区;
    6、&CBrush(RGB(x,y,z)):定义一个颜色是RGB(x,y,z))的画刷;
    7、pDC->FillRect(&rc, &CBrush(RGB(x,y,z))):用上面的刷子填充按钮表面的矩形区域;
    8、pDC->DeleteDC():删除DC,即和按钮的DC脱离关系。总体功能就是用一定颜色填充按钮的上表面这些东西都很基础,还是自己学习比较好