VC6.0MFC动态加载位图中出现的问题

来源:互联网 发布:mac版有360浏览器吗 编辑:程序博客网 时间:2024/06/02 03:39

大家都知道VC6.0只支持bmp格式的位图文件,这里不再赘述(此先引入一个png格式的文件时,老是报错,如下)。


现在做一个动态加载位图的例子:

假定你已经创建好项目(这里以对话框程序为例):

1,在对话框中插入图像和按钮(标题为”加载“)控件

2,设置图像控件的类型为位图(Bitmap)类型,图像设为空

3,为该图像绑定一个变量,为CStatic类型(m_LoadBitmap);绑定变量时,有时在classwizard之中不显示图像控件,你可以修改控件的ID,再打开classwizard,就会出现想要的内容。

4,为按钮添加单击消息,实现单击时弹出资源查找框,加载磁盘中的bmp图像文件。

事件核心代价如下:

CFileDialog fDlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"位图|*.bmp||");
if(fDlg.DoModal()==IDOK)
{
CString szBpName;
szBpName=fDlg.GetPathName();
HBITMAP hOldBmp=m_LoadBitmap.SetBitmap((HBITMAP)LoadImage(NULL,szBpName,IMAGE_BITMAP,0,0,LR_LOADFROMFILE));
DeleteObject(hOldBmp);
}


0 0