MFC如何在窗口显示背景图片?~~~~~~~~~~~~~~~~

是窗口,就是显示文字的那个窗口。。。不是对话框。。。麻烦大虾们顺便把代码跟小弟分享下,小弟太菜。。。。。。。就是用MFC的时候,什么都不添加,只是创建一个工程,运行的时候... 是窗口,就是显示文字的那个窗口。。。不是对话框。。。麻烦大虾们顺便把代码跟小弟分享下,小弟太菜。。。。。。。
就是用MFC的时候,什么都不添加,只是创建一个工程,运行的时候不是会弹出一个窗口么,就是那个。。。
展开
 我来答
超基赫
2010-06-10 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:91
采纳率:0%
帮助的人:87.4万
展开全部
能吧问题描述的清楚点吗, 什么是“显示文字的那个窗口。。。不是对话框”??

补充:创建一个工程的时候,直接运行看到的窗口其实也是对话框。
添加背景图片:
1. 使用picture control控件,然后LoadBitmap, setbitmap就可以了
2. 也可以重写WM_ERASEBKGND消息:使用dc,先LoadBitmap, createcompatibledc,然后selectobject讲图片选到dc上去,最后bitblt将图片画上去。
3. 也可以重写WM_PAINT消息:基本跟2的步骤一样,但是最后还要处理下WM_ERASEBKGND,直接return TRUE.不然直接改写WM_PAINT可能会使背景闪烁

要看代码示例的话,建议你去http://www.vckbase.com/code里面很多关于UI制作的示例都很经典,而且还附带了文档解释,很容易看懂的,我基本都在上面学的。
craining
2010-06-13 · TA获得超过320个赞
知道小有建树答主
回答量:189
采纳率:0%
帮助的人:172万
展开全部
什么都不添加, 编译运行后弹出的是对话框哦, 怎么不是对话框呢??
你说的窗口跟对话框有什么区别?
如果是对话框的话可以在void C*****Dlg::OnPaint()函数中的else中添加:
CPaintDC dc(this);
CDialog::OnPaint();
CRect rect;
GetClientRect(&rect);
CDC dcMem;
dcMem.CreateCompatibleDC(&dc);
CBitmap bmpBackground;
bmpBackground.LoadBitmap(IDB_BITMAPBG); //IDB_BITMAP是你自己的图对应的ID

BITMAP bitmap;
bmpBackground.GetBitmap(&bitmap);
CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground);
dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,
bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式