mfc设置控件背景色,mfcbutton改变颜色
MS-VisualC++的类库(微软基础班的缩写)类库提供了CWnd:OnCtlColor函数,在工作框架的子窗口被重画时将调用该成员函数。因此可以重载WM_CTLCOLOR消息的响应函数。此函数的原型:afx _ msg HB rush onctl color(CDC * pDC,CWnd
*pWnd,UINT nCtlColor);
参数nCtlColor用于指定控件的类型,可以是:按钮颜色
按钮控件。数字线划图颜色
对话框。CTLCOLOR_EDIT编辑框。CTLCOLOR_LISTBOX
列表控件。CTLCOLOR_MSGBOX
消息控件。CTLCOLOR _滚动条滚动条控件。CTLCOLOR_STATIC
静态控件
假设你已有了名为我的的对话框工程。你有了一个静电的控件,ID为IDC_STATIC1 .
画刷
CMyDlg:OnCtlColor(CDC*
pDC、CWnd*
pWnd,UINT nCtlColor)
{
HBRUSH hbr
=CDialog:OnCtlColor(pDC,
pWnd,nCtlColor);
//TODO:更改任何
直流电的属性在这里
if (nCtlColor==CTLCOLOR_STATIC)
{
pDC- SetTextColor(RGB(255,0,0));//字体颜色
pDC- SetBkColor(RGB(0,0,
255));//字体背景色
}
//TODO:
如果不需要默认值,返回不同的画笔
返回虎贝尔
}
如果要指定某个特定控件可以这样写:ID为IDC_STATIC1
if(pWnd-GetDlgCtrlID()==IDC _ static 1)
{
pDC- SetTextColor(RGB(255,0,0));//设置字体颜色
pDC- SetBkMode(透明);//设置字体背景为透明
//TODO:返回一个
如果不需要默认设置,则使用不同的笔刷
return(HBRUSH):GetStockObject(BLACK _ BRUSH);//设置背景色
}
其他
返回虎贝尔
【注】
黑色_笔刷:黑色
白色_画笔:白色
灰色_画笔:灰色
空_刷:透明
空心_画笔:透明
来自:http://博客。。net/wny 198816/文章/详情/6784523