VIS MFC的Static控件如何进行涂色? -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

VIS MFC的Static控件如何进行涂色?

2016-02-15 11:22:11 1937 1

想做一个选择颜色的对话框,已经按照大神的方法放好了static,着色又不会了。能不能给出具体的代码,谢谢!

取消 提交回答
全部回答(1)
  • 51干警网
    2019-07-17 18:28:47
    已采纳
    void CApp2Dlg::OnButton1() 
    {
        // TODO: Add your control notification handler code here
        CColorDialog colorDia;
         if (colorDia.DoModal() == IDOK)
         {
              m_color = colorDia.GetColor();
              GetDlgItem(IDC_STATIC_1)->InvalidateRect(NULL);
         }
    }
    
    HBRUSH CApp2Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
    {
        HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
        m_brush.CreateSolidBrush(m_color);
        // TODO: Change any attributes of the DC here
        UpdateData(TRUE);
        if (pWnd->GetDlgCtrlID() == IDC_STATIC_1)
        {
            pDC->SetBkColor(m_color);
            pDC->SetBkMode(OPAQUE);
            return m_brush;
        }
    
        UpdateData(FALSE);
    
        // TODO: Return a different brush if the default is not desired
        return hbr;
    }
    0 0
+关注
51干警网
阿里云论坛版主,QQ 1978638808
58
文章
9431
问答
问答排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载