我在网上搜索了很多,大家都说组框和STATIC静态文本框是一样的,可是我的静态文本框是OK的,组框文字的背景色怎么不行呢?代码片段:
HBRUSH CDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
// HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

// TODO: Change any attributes of the DC here
CBrush brush(RGB(0XB0, 0XC4, 0XDE));
if(nCtlColor == CTLCOLOR_STATIC)
{
pDC->SetBkMode(TRANSPARENT);
}
return brush;
// TODO: Return a different brush if the default is not desired
// return hbr;
}就是说组框文字的背景色是很难看的灰色,静态框却可以在这里设置,请问高手,组框需要特别设置什么么?

解决方案 »

  1.   

    组合框的背景色应该是单独设置的,使用组合框类的背景色设置函数设置下就行了
    查下MSDN就知道了
      

  2.   

    组合框的背景色应该是单独设置的,使用组合框类的背景色设置函数设置下就行了
    查下MSDN就知道了
      

  3.   

    组合框的背景色应该是单独设置的,使用组合框类的背景色设置函数设置下就行了
    查下MSDN就知道了
      

  4.   

    if (nCtlColor == CTLCOLOR_STATIC)
    {
      pDC->SetBkMode(TRANSPARENT); //透明显示能看到什么呢?
    pDC->SetBkColor(RGB(255,0,0));
    }
    我的组框也是同样可以改变的,开发环境windows XP + VC6.0(SP6)
      

  5.   

    ……怪我没说清楚,不是组合框,是组框,就是那个文字带个方格的控件,他的默认ID也是IDC_STATIC
    这个东西的背景色怎么设置啊
      

  6.   

    HBRUSH CDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
    {
    if(nCtlColor == CTLCOLOR_STATIC)
    {
    pDC->SetBkColor(RGB(0XB0, 0XC4, 0XDE));
    }
    return CreateSolidBrush(RGB(0XB0, 0XC4, 0XDE));
    }