我做了一个有很多编辑框的界面,这些编辑框都是灰色,有没有什么函数将它的这个底色变一变的??
我用的是MFC

解决方案 »

  1.   

    HBRUSH CYourEdit::CtlColor(CDC* pDC, UINT nCtlColor) 
    {
    static CBrush hbr;
    if(hbr.m_hObject==NULL)
    {
    // hbr.CreateSolidBrush( RGB(229, 255, 255) );
    }
    pDC->SetTextColor( RGB(0,0,255) );
    pDC->SetBkColor( RGB(229, 255, 255) );
    return hbr;
    }
      

  2.   

    利用WM_CTLCOLOR消息实现编辑控制(Edit Control)的文本与背景色的改变HBRUSH CMyDialog::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) {if(nCtlColor==CTLCOLOR_EDIT){
       pDC->SetBkMode(TRANSPARENT);   HBRUSH B = CreateSolidBrush(COLOR); //COLOR是你想设置的颜色    return (HBRUSH) B; }return CDialog::OnCtlColor(pDC, pWnd, nCtlColor); }
      

  3.   

    在父窗口响应WM_ONCTLCOLOR,函数返回一个画刷句柄就行了。