欢迎来到天天文库
浏览记录
ID:14206657
大小:22.50 KB
页数:3页
时间:2018-07-26
《改变控件的背景颜色》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MFC中改变控件的背景颜色这里讲述两种改变MFC控件背景颜色的方法:方法一:用OnCtlColor消息函数,改变特定控件的背景首先在头文件的类中定义CBush类的变量brush 如语句:CBrushbrush;然后在源文件的构造函数中初始化:brush.CreateSolidBrush(RGB(255,0,0));RGB(,,)控制颜色,分别为红,绿,蓝,三个一样显示灰色背景,都为255为白色,都为0为黑色然后再消息函数中写代码如下:HBRUSHCFilePlayDlg::OnCtlColor(CDC*p
2、DC,CWnd*pWnd,UINTnCtlColor){ HBRUSHhbr=CDialog::OnCtlColor(pDC,pWnd,nCtlColor); //TODO: 在此更改DC的任何属性 //TODO: 如果默认的不是所需画笔,则返回另一个画笔 if(pWnd->GetDlgCtrlID()==IDC_FILE_PLAY) { pDC->SetBkColor(RGB(0,0,0)); HBRUSHbrush=CreateSolidBrush(RGB(0,0,0)); returnbrus
3、h; } returnhbr;}方法二:也用这个消息函数HBRUSHCFilePlayDlg::OnCtlColor(CDC*pDC,CWnd*pWnd,UINTnCtlColor){ HBRUSHhbr=CDialog::OnCtlColor(pDC,pWnd,nCtlColor);if(nCtlColor==CTLCOLOR_STATIC) { pDC->SetBkColor(RGB(0,0,0)); HBRUSHb=CreateSolidBrush(RGB(0,0,0)); retur
4、nb; }returnhbr;}//这里指定控件类型为静态类型,可以指定为其他类型,如CTLCOLOR_BTN按钮控件·CTLCOLOR_DLG对话框·CTLCOLOR_EDIT编辑控件·CTLCOLOR_LISTBOX列表框控件·CTLCOLOR_MSGBOX消息框·CTLCOLOR_SCROLLBAR滚动条控件·CTLCOLOR_STATIC静态控件 这个方法省略了定义brush这个变量,直接在函数中用CreateSolidBrush生成一个画刷b,然后返回b。
此文档下载收益归作者所有