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

MFC,用控件在界面上加一个背景图,显示时图片会遮住这个界面上的按钮,请教各位,该怎么办?本人刚学MFC,希望有人指点指点!... MFC,用控件在界面上加一个背景图,显示时图片会遮住这个界面上的按钮,请教各位,该怎么办?本人刚学MFC,希望有人指点指点! 展开
 我来答
jimmyzhu1212
推荐于2017-11-24 · 超过11用户采纳过TA的回答
知道答主
回答量:23
采纳率:0%
帮助的人:22.9万
展开全部
不要用控件加背景图!可以直接加的!像下面这样做,我就是这样做的,没问题!
先载入一张图片,如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;
}
舒服还巍峨的小烤红薯1217
2011-03-15 · TA获得超过597个赞
知道小有建树答主
回答量:427
采纳率:0%
帮助的人:344万
展开全部
不要用控件做背景,可以在OnPaint或OnDraw函数里绘制
更多追问追答
追问
在OnPaint或OnDraw函数里怎么绘制啊?能不能说具体点,最好能有类似的代码参考一下
追答
你的是对话框还是文档/视结构?可以把源程序发过来,我给你改
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式