MFC如何把一张图片显示在一个单文档内??

作者&投稿:费克 (若有异议请与网页底部的电邮联系)
如何在mfc单文档的程序中显示图片~

CRect rect;
GetClientRect(&rect);//获得客户区空间大小
CClientDC dc(this);//获得当前客户区窗口对象
CDC memDC;//定义内存中的绘图空间
CBitmap NewBitmap,*Old;
NewBitmap.LoadBitmap(IDB_START);//装载位图
memDC.CreateCompatibleDC(&dc);//创建兼容空间
Old=memDC.SelectObject(&NewBitmap);//将新位图选入内存
dc.BitBlt(0,0,rect.Width(),rect.Height,&memDC,0,0,SRCCOPY);
memDC.SelectObject(Old);
return 0;
导入图片的函数

使用这个函数StretchBlt就可以,具体参考说明吧

能载入bmp格式的图像
、你用VC++建立一个MFC(exe)工程,命名为“My”,在弹出的“MFC应用程序向导-步骤1” 中选“单文档”,然后点“完成”->“确定”。

2、在“MyView.h”文件中找到代码“CMyDoc* GetDocument();”在其下方添加如下代码:
LPBITMAPINFO bmi;

LPBYTE pBits;

BOOL Read(char* s);

3、然后打开“MyView.cpp”文件,在最下面写如下代码:

BOOL CMyView::Read(char* s)
{
CFile file;
BITMAPFILEHEADER bmfh;

//打开文件
if(!file.Open(s,CFile::modeRead))
{
AfxMessageBox("File cannot open!");
return FALSE;
}

//读文件信息头
file.Read( (LPVOID)&bmfh, sizeof(bmfh) );
if(bmfh.bfType != 0x4d42)
{
AfxMessageBox("This is not a bmp file!");
return FALSE;
}

//读位图信息头
int infoSize = bmfh.bfOffBits - sizeof(bmfh);
bmi = (LPBITMAPINFO)new BYTE[infoSize];
file.Read( (LPVOID)bmi, infoSize);
if(bmi->bmiHeader.biBitCount!=1 && bmi->bmiHeader.biBitCount!=4 && bmi->bmiHeader.biBitCount!=8 && bmi->bmiHeader.biBitCount!=24)
{
AfxMessageBox("The number of colors is not valid!");
return FALSE;
}

//读图像数据
pBits = new BYTE[bmi->bmiHeader.biSizeImage];
file.Read( (LPVOID)pBits, bmi->bmiHeader.biSizeImage);

return TRUE;
}

往上找,找到构造函数:CMyView::CMyView()
在其中添加代码:

Read("d:\\picture\\图片.bmp");

往下找,找到OnDraw函数,在该函数的第三行添加代码:

if(bmi && pBits)
{
::StretchDIBits(pDC->GetSafeHdc(),0,0,bmi->bmiHeader.biWidth,bmi->bmiHeader.biHeight,0,0,bmi->bmiHeader.biWidth,bmi->bmiHeader.biHeight,pBits,bmi,DIB_RGB_COLORS,SRCCOPY);
}

如果你清楚MFC绘图原理,你几乎可以在任何位置画图


iphone九宫格切图快捷指令是什么如何把照片做成九宫格图片
在朋友圈中,我们经常会看到一张完整的图片被切割成九宫格形式来展示,看上去逼格很高。那么,iPhone怎么九宫格切图?今天“果粉俱乐部”带来2种九宫格切图使用方法,一种是借助九宫格捷径,另外一种是APP,赶快Get起来吧。iPhone九宫格切图捷径安装使用教程 九宫格切图捷径下载:捷径名称:九宫格切图 支...

FC游戏(nes)资源图片提取工具
以前看过有类似的FC游戏(nes)资源图片提取工具,现在想用了却怎么也找不到了。哪位仁兄有的话麻烦发到我邮箱里,490786122@qq.com我提供一些网址,希望会有些提示:http:\/\/bbs.emu-zone.org\/newbbs\/viewthread.php?tid=396266&highlight=%2B%CC%EC%B7%E3%CA%AE%D2%BB%C0%C9还有一个是什么叫做tlp的汉化类的...

如何用快速的方法将图片中的品番相同、日期相同。PO行中的数据移到FC...
只差一步了,再努力一下你就成功了,自己做出来更能让你高兴

fcbrowser浏览器只有半屏
重置浏览器。1、点击桌面浏览器的属性栏。2、找到浏览器属性栏的高级设置项。3、在重置项里找到重置点击确认。4、在删除个性化设置前打钩确认重置。fcbrowser浏览器是用来检索、展示以及传递Web信息资源的应用程序。Web信息资源由统一的资源标识符所标记,它是一张网页、一张图片、一段视频或者任何在Web上...

FC模拟器效果为何不如TV?
,还有就是楼主说的TV SET,也是,那个的调法是:楼主你的FC模拟器必须是VirtuaNes才行,点击菜单里的选项,再从里面找到图像,里面有应用TV外观,那个就是模拟器画面会显示原来电视的边框,应用TV画面是屏幕拉伸,也是当年TV界面,模拟TV模式,是调节扫描线的,楼主可以根据实际情况来调节。

要一张古代女子图
http:\/\/hiphotos.baidu.com\/六月琴\/pic\/item\/8803318689247e0bc75cc3e3.jpg 楼主、你要的图片、我就找了这么多、对不起、下面是情侣的、http:\/\/hiphotos.baidu.com\/%BA%C3%B2%CA%C3%B7\/mpic\/item\/c4573f17c8cae46821a4e9dd.jpg http:\/\/hiphotos.baidu.com\/meinv0815\/pic\/item\/f8fc7608...

FC勇者斗恶龙4
另外我想和楼主说的是因为本人口才问题,无法用准确的语言描述好那些隐藏道具的位置,百度充许传的图片也只能传一张,而且又小,所以没办法给你发截图,有什么问题你加这个Q吧,我在Q发这个游戏的截图给你.我先说好,这个我很久不玩,没有存档,你发个存档文件过来,我才可以截图给你.你只要发存档就可以了,...

如何把ps图片中一部分去掉
直接裁剪,保留想留下的地方 2.用工具进行选中,然后选择编辑里的清除 3.新建一张合适大小的画布,ctrl+a选中原图,拖动到新建的画布中进行调节大小来把要删除的部分去掉 4.把要保留的部分用钢笔、磁性套索进行选中,并按ctrl+j复制出来,隐藏原图层,图片中要删除的部位已经去掉了 ...

九宫格切图快捷指令轻松学习九宫格切图的快捷指令
今天给大家带来的是快捷指令规则文件九宫格切图工具,可以把一张图片切割成六份或者九份,切割后的图片小伙伴们可以按照顺序发送朋友圈,相对于需要下载软件来实现此功能还是很不错的。相应的规则文件已经为大家准备好,在文章最底部查看并进行获取,获取后进行点击获取快捷指令,把规则添加到快捷指令库即可...

MAC系统自带的预览,只能一张一张浏览,有什么解决办法。。
打开要浏览的图片的文件夹,选中第一张图片,按下空格键,就可以通过键盘上的方向键来浏览了。可参考此经验来操作。http:\/\/jingyan.baidu.com\/article\/915fc414eb468d51394b20c0.html 除了方向键来浏览之外,还可以通过command+A全部选中,然后双击打开第一张,这时从菜单中可以选择幻灯片放映的方式来...

余姚市19131791137: MFC如何把一张图片显示在一个单文档内?? -
肥阎醋酸: 能载入bmp格式的图像 、你用VC++建立一个MFC(exe)工程,命名为“My”,在弹出的“MFC应用程序向导-步骤1” 中选“单文档”,然后点“完成”->“确定”.2、在“MyView.h”文件中找到代码“CMyDoc* GetDocument();”在其下方添...

余姚市19131791137: mfc 单文档如何在一个位置贴一张ico图片 -
肥阎醋酸: 可以用 LoadIcon 和 DrawIcon 函数来贴图标

余姚市19131791137: MFC单文档怎么加图片 -
肥阎醋酸: MFC中有一个功能很强大的类CImage,建议你使用这个类,首先#inculde<altimage.h> CImage image;//定义一个CImage类的对象 这里对象名字是image image.Load("文件地址");//在load函数中加入文件的地址 CDC *pDC = this->GetDC(); //获得当前设备上下文 通俗讲就是画布 也就是你看到的屏幕 image.Draw(pDC->m_hDC,CPoint(0,0));//记得把CPoint(0,0)换成你想要的位置哦 //还有一种画法image.Draw(pDC->m_hDC,CRect(x1,y1,x2,y2));就是把图片画到矩形里 可以伸缩的

余姚市19131791137: 如何在mfc单文档中插入一些漂亮的图片 -
肥阎醋酸: 在View的OnDraw函数中,Load,BitBlt

余姚市19131791137: MFC建立单文档,为界面添加一张图片,怎样设置它的显示大小 -
肥阎醋酸: 使用这个函数StretchBlt就可以,具体参考说明吧

余姚市19131791137: 怎么往MFC单文档窗口中添加背景图片,并且使图片能自适应窗口大小 -
肥阎醋酸: 加载图片,然后利用GDI函数画图.

余姚市19131791137: mfc单窗口程序怎么引用图片? -
肥阎醋酸: 这个建议你用PPT来做吧.MFC引用图片的话,加入图片控件,然后进入图片的资源ID就可以了.想实现其他效果的话,用GDI绘图吧,不过很麻烦就是了.

余姚市19131791137: 用VC++做一个工程MFC单文档显示一个文件夹下所有图片 -
肥阎醋酸: 图片控件 String * filename IO扫出所有图片的文件名 设置控件参数, 用 上一张,下一张按钮index换图

余姚市19131791137: mfc单文档对话框加载一张图片的问题 -
肥阎醋酸: 因为用onpaint(),首先画窗体,那么重装图片就会更慢,因此向视图加入wm_erasebkgnd消息,在响应函数中话,效果更好 补充:可否在消息函数用pdc->SetBkModel(TRANSPARENT);用来...

余姚市19131791137: MFC中怎么实现连续显示一个文件夹里的图片 -
肥阎醋酸: 是否需要源程序,我这里有,以前做过,现在有点理不出头绪了.你说的这个难点有两个: 1.在MFC中显示图片,这是一种模块功能,你可以单独来写. 2.遍历指定文件夹,找到指定文件.这个难度可能要比第一条大,因为第一条有许多源代...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网