永发信息网

MFC,用控件在界面上加一个背景图,显示时图片会遮住这个界面上的按钮,请教各位,该怎么办?

答案:2  悬赏:60  手机版
解决时间 2021-03-18 00:49
MFC,用控件在界面上加一个背景图,显示时图片会遮住这个界面上的按钮,请教各位,该怎么办?
最佳答案
不要用控件加背景图!可以直接加的!像下面这样做,我就是这样做的,没问题!
先载入一张图片,如ID为IDB_BITMAP
头文件中:
CBrush m_brBk;//在public中定义
源文件中:
在初始化函数OnInitDialog()中加入: (或者在构造函数中)
BOOL CTestDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP);
m_brBk.CreatePatternBrush(&bmp);
bmp.DeleteObject();
return TRUE; // return TRUE unless you set the focus to a control
}
再打开类向导,找到WM_CTLCOLOR消息,重载得对应函数OnCtlColor(),
添加如下:
HBRUSH CTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (pWnd == this)
{
return m_brBk;
}
return hbr;
}
全部回答
不要用控件做背景,可以在OnPaint或OnDraw函数里绘制追问在OnPaint或OnDraw函数里怎么绘制啊?能不能说具体点,最好能有类似的代码参考一下追答你的是对话框还是文档/视结构?可以把源程序发过来,我给你改追问我的是dialog,源程序就算了吧,还是我自己想想办法,多练习练习吧
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
万宝集萃珠宝城地址有知道的么?有点事想过去
求校园爱情小说不要异能男主角最好帅但是家世
词语什么什么子孙
东莞南城汽车总站离大岭山松山湖理工学院要座
杭州市西湖区距离杭州市余杭区塘西镇多远。怎
典鹤轩漆器工厂直营店地址在什么地方,想过去
金道政真的是Colin的爸爸吗?不要是真的好!
明工工资,大包头跑了,联系不上,也没给我们
住房后面的池塘全是居民厕所直接排在池塘里,
一个新手,在起点网写小说怎么样才可以积累人
如何让团队像一个大家庭
身份证消磁了在外地是否还能恢复,如在深圳
名字里带有天使心的动漫
一女生长得漂亮。然后男人说什么“为了美动刀
华春里三巷/广阳道(路口)地址在哪,我要去那
推荐资讯
自制铜丝wifi接收器要外接上电源吗
那天看嘻哈包袱铺的表演,回家太晚了,风大就
中国电信南桥营业厅怎么去啊,有知道地址的么
兰陵大蒜在什么季节最好
金龙大街怎么去啊,有知道地址的么
is this w() your aunt?yes she is.填写完整
我大二,今年六月过了四级,580多,四级口语
红军在长征路上在哪里打了最恶劣的一仗
亲爱的中国电信用户,你好后边是什么
湖州市练市全隆电磁线厂在什么地方啊,我要过
fast路由器怎么设置隐藏wifi密码
本草黑鸭在什么地方啊,我要过去处理事情
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?