MFC添加使用picture control控件添加Bitmap图片

需要在已有的绘图程序下绘制好的平面图中添加一个显示图片的功能,如点击教学楼5,弹出有该楼图片的对话框。问题:程序开始运行后打开平面图,如何建立该平面图与弹出图片对话框的联... 需要在已有的绘图程序下绘制好的平面图中添加一个显示图片的功能,如点击教学楼5,弹出有该楼图片的对话框。
问题:程序开始运行后打开平面图,如何建立该平面图与弹出图片对话框的联系?给出思路即可。
展开
 我来答
在灵鹫寺玩三国志的杜梨
2019-01-09 · TA获得超过264个赞
知道小有建树答主
回答量:230
采纳率:83%
帮助的人:24.6万
展开全部
1.事先准备好位图。一定要位图。位图。

2.在对话框中添加picture控件,设置type为bitmap,将其ID改为IDC_STATIC1(不改不行)。然后为picture添加控制变量PT1。

3.在.cpp中找到onpaint()函数加入如下代码。

CDC dcMemory1;

CBitmap wtj_bitmap1;

BITMAP bmInfo1;

CDC *pDC=PT1.GetDC();;

PT2.SetWindowPos(0,-400,112,53,20, SWP_NOZORDER | SWP_NOACTIVATE);

GetDlgItem(IDC_STATIC1)->GetWindowRect(rect);//创建一个CRect对象rect,矩形结构类,此对象用来指定要拉伸变为的大小

wtj_bitmap1.LoadBitmap(IDB_BITMAP15);

wtj_bitmap1.GetObject(sizeof(bmInfo1),&bmInfo1);

dcMemory1.CreateCompatibleDC(pDC);

dcMemory1.SelectObject(&wtj_bitmap1);

//pDC->SetStretchBltMode(COLORONCOLOR);

pDC->SetStretchBltMode(HALFTONE);

pDC->StretchBlt(0,0,1000,rect.Height()-13,&dcMemory1,0,0,bmInfo1.bmWidth,bmInfo1.bmHeight, SRCCOPY);//利用StretchBlt()贴图实现自动拉伸

ReleaseDC(pDC);

4.setwindowspos函数和stretchblt函数参数百度就可以查到了。
匿名用户
2019-01-08
展开全部
直接CImage在需要绘图的地方Draw啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式