社区
界面
帖子详情
MFC如何在单文档显示多幅位图?
guoxijun
2010-04-20 01:02:04
Y坐标固定,在不同的X坐标点显示不同的位图
譬如:
(10,10)显示bmp1
(10,50)显示bmp2
(10,90)显示bmp3
...全文
492
10
打赏
收藏
MFC如何在单文档显示多幅位图?
Y坐标固定,在不同的X坐标点显示不同的位图 譬如: (10,10)显示bmp1 (10,50)显示bmp2 (10,90)显示bmp3
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
尹成
2010-04-20
打赏
举报
回复
[Quote=引用 8 楼 an_bachelor 的回复:]
重载OnDraw()
用GDI+的DrawImage msdn例子:
Graphics graphics(hdc);
// Create an Image object.
Image image(L"climber.jpg");
// Create a Pen object.
Pen pen (Color(255, 255, 0, 0), 2);
……
[/Quote]
完全正确
an_bachelor
2010-04-20
打赏
举报
回复
重载OnDraw()
用GDI+的DrawImage msdn例子:
Graphics graphics(hdc);
// Create an Image object.
Image image(L"climber.jpg");
// Create a Pen object.
Pen pen (Color(255, 255, 0, 0), 2);
// Draw the original source image.
graphics.DrawImage(&image, 10, 10);
// Create a Rect object that specifies the destination of the image.
Rect destRect(200, 50, 150, 75);
// Draw the rectangle that bounds the image.
graphics.DrawRectangle(&pen, destRect);
// Draw the image.
graphics.DrawImage(&image, destRect);
没错那些数字就是坐标
尹成
2010-04-20
打赏
举报
回复
LoadBitmap
CreateCompatibleDC
SelectObject
BitBlt
重写OnDraw ,创建图片
Eleven
2010-04-20
打赏
举报
回复
GDI+比较方便。。。
liumenghappy
2010-04-20
打赏
举报
回复
[Quote=引用 1 楼 caozhy 的回复:]
在 CView::OnDraw 里面依次
LoadBitmap
CreateCompatibleDC
SelectObject
BitBlt
一幅一幅绘制。
[/Quote]
正解
zhangxin357
2010-04-20
打赏
举报
回复
你可以使用CImage类实现,此类由MFC和ATL共享。
void CdlgDlg::OnBnClickedButton1()
{
//IDC_STATIC_IMAGE是你需要放置图片的静态控件ID
CDC * pDC = GetDlgItem(IDC_STATIC_IMAGE)->GetDC();
CImage image;
//文件路径
image.Load(_T("c:\\image1.jpg"));
image.Draw(pDC->m_hDC, 0,0,100,100,0,0,100,100);//
}
如果你要循环显示图片,只需临时加载不同的图片即可,如
image.Load(_T("c:\\image2.jpg"));
类似
lllyyy2403
2010-04-20
打赏
举报
回复
CBitmap* pBitmap = new CBitmap;
BITMAP BmpInfo;
CBitmap* pOldBitmap;
CDC* pDisplayMemDC=new CDC;
pDisplayMemDC->CreateCompatibleDC(pDC);
pBitmap->LoadBitmap(IDB_TITLE_LEFT);
pOldBitmap=(CBitmap*)pDisplayMemDC->SelectObject(pBitmap);
pBitmap->GetBitmap(&BmpInfo);
// x,y为绘图位置 ,必要时此语句要有For(..;..;..)控制
pDC->BitBlt(x,y, BmpInfo.bmWidth, BmpInfo.bmHeight, pDisplayMemDC, 0, 0, SRCCOPY);
pDisplayMemDC->SelectObject(pOldBitmap);
pBitmap->DeleteObject();
ReleaseDC(pDisplayMemDC);//记得执行以下的语句
delete pDisplayMemDC;
delete pBitmap;
wwgddx
2010-04-20
打赏
举报
回复
楼上的两位正解
threenewbee
2010-04-20
打赏
举报
回复
在 CView::OnDraw 里面依次
LoadBitmap
CreateCompatibleDC
SelectObject
BitBlt
一幅一幅绘制。
MFC
单
文档
下利用CImage类读取
多幅
图片
在VS2008的
MFC
单
文档
下利用多CImage类读入
多幅
图片
用CImage类在VS2008平台上实现的
MFC
单
文档
多幅
图片的读入
用CImage类在VS2008平台上实现的
MFC
单
文档
多幅
图片的读入
mfc
基于
单
文档
打开bmp图片
通过资源管理器打开一张bmp图片,并实现图片按原始比例放大或缩小 通过资源管理器打开一张bmp图片,并实现图片按原始比例放大或缩小
图像分割
MFC
中实现
一款基于
MFC
的代码可以运行在64位系统上
MFC
打开和保存一幅bmp图片编程作业流程.doc
MFC
打开和保存一幅bmp图片编程作业流程.doc
界面
15,980
社区成员
115,867
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章