在VS2005中, 为什么在对话框中,GroupBox控件的文本颜色怎么改变不了,背景色也改变不了,它的ID我也改过来了为IDC_LINE,
if(pWnd->GetDlgCtrlID()==IDC_LINE)
{
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkColor(RGB(255,255,0));
}
if(pWnd->GetDlgCtrlID()==IDC_LINE)
{
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkColor(RGB(255,255,0));
}
解决方案 »
- 请问一下,我的鼠标左键弹起的消息为什么不能响应啊?
- 求标准C++编写标准的dll实例
- visual studio 8是哪个版本?
- 问个关于GDI+的问题
- 求一个画圆的算法。
- 如何更改树控件项目的图标?
- 一窗口最小化,且不是当前窗口,当某几个键同时按下时让他成为当前窗口,如何做?
- 默默和皓,快来领分,感谢你们最近对我的帮助
- 高分问一个CALLBACK的问题
- 这个问题怎么解决,warning LNK4098: defaultlib "libcmt.lib" conflicts with use of other libs
- 我把窗口标题栏去掉了,怎么在实现任务栏上图标点下最小化,再点下还原呢
- vc2005如何连接sql server 2000?
下面的代码是我用的,是有效果的。你可以看看。HBRUSH CUserLogin::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if(m_bPasswordState)
{
if(pWnd->GetDlgCtrlID() == IDC_EDITPASSWORD)
{
pDC->SetBkMode(TRANSPARENT );
pDC->SetBkColor(RGB(255,255,255));
hbr = CreateSolidBrush(RGB(255,255,255));
} return hbr;
} if(pWnd->GetDlgCtrlID() == IDC_EDITPASSWORD)
{
pDC->SetBkMode(TRANSPARENT );
pDC->SetBkColor(RGB(255,0,0));
hbr = CreateSolidBrush(RGB(100,100,100));
}
return hbr;
}
HBRUSH CMyDLG::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if(pWnd->GetDlgCtrlID()==IDC_LINE)
{
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkColor(RGB(255,255,0));
return m_brush;
}
return m_brush;
}
有返回画刷,就是改变不了字体的颜色
if(pWnd->GetDlgCtrlID()==IDC_STATIC)
{
pDC->SetTextColor(RGB(0,123,125));
pDC->SetBkColor(RGB(0,255,0));
}