强大的CImage类
这下有了CImage类,处理其他类型的图片不再寻找第三方类库了。加载到对话框背景的代码如下:
HRSRC hRsrc=::FindResource(AfxGetResourceHandle(),//从资源里载入背景JPEG图片
![]()
MAKEINTRESOURCE(IDR_JPG1),
_T("JPG"));
if(hRsrc!=NULL)
{
HGLOBAL hImgData=::LoadResource(AfxGetResourceHandle(),hRsrc);
if(hImgData==NULL)
{
::FreeResource(hImgData);
}
else
{
LPVOID lpVoid = ::LockResource(hImgData);
LPSTREAM pStream=NULL;
DWORD dwSize = ::SizeofResource(AfxGetResourceHandle(), hRsrc);
HGLOBAL hNew = ::GlobalAlloc(GHND, dwSize);
LPBYTE lpByte = (LPBYTE)::GlobalLock(hNew);
::memcpy(lpByte, lpVoid, dwSize);
GlobalUnlock(hNew);
HRESULT ht = CreateStreamOnHGlobal(hNew, TRUE, &pStream);
if( ht != S_OK )
{
//ASSERT( FALSE );
GlobalFree(hNew);
}
else
{
m_imgBK.Load(pStream);
GlobalFree(hNew);
}
::FreeResource(hImgData);
}
}
//m_imgBK.Load("hh.jpg"); //这个方法可以载入文件
处理消息OnEraseBkgnd,
BOOL CDlgCfg::OnEraseBkgnd(CDC* pDC)
{
m_imgBK.Draw(pDC->GetSafeHdc(),0,0,500,500,0,900,500,500);
return TRUE;
//CDialog::OnEraseBkgnd(pDC);
}
还可以直接从文件加载:
CImage m_img;
HRESULT hr;
hr = m_img.Load(L"D:\\点歌\\歌星点歌.jpg");
强大的CImage类的更多相关文章
- 介绍一个强大的画图类 CImage(转)
我们知道,Visual C++的CBitmap类和静态图片控件的功能是比较弱的,它只能显示出在资源中的图标.位图.光标以及图元文件的内容,而不像VB中的Image控件可以显示出绝大多数的外部图像文件( ...
- 用CImage类来显示PNG、JPG等图片
系统环境:Windows 7软件环境:Visual Studio 2008 SP1本次目的:实现VC单文档.对话框程序显示图片效果 CImage 是VC.NET中定义的一种MFC/ATL共享类,也是A ...
- GDI 总结三: CImage类使用
前言 CImage类是基于GDI+的.可是这里为什么要讲归于GDI? 主要是基于这种考虑: 在GDI+环境中,我们能够直接使用GDI+ ,没多少必要再使用CImage类 可是,假设再 ...
- 【VS开发】GDI+ 用CImage类来显示PNG、JPG等图片
系统环境:Windows 7 软件环境:Visual Studio 2008 SP1 本次目的:实现VC单文档.对话框程序显示图片效果 CImage 是VC.NET中定义的一种MFC/ATL共享类,也 ...
- 一个比CBitmap更优秀的类 -- CImage类
Visual C++的CBitmap类的功能是比较弱的,它只能显示出在资源中的图标.位图.光标以及图元文件的内容,而不像VB中的Image控件可以显示出绝大多数的外部图像文件(BMP.GIF.JPEG ...
- 功能更强大的格式化工具类 FormatUtils.java
package com.util; import java.text.DecimalFormat; import java.text.ParseException; import java.text. ...
- CImage类的介绍与使用
CImage类的介绍与使用 程序代码下载处:http://download.csdn.net/source/2098910 下载处:http://hi.baidu.com/wangleitongxin ...
- c++ 中CImage类Load函数,路径中含有空格应对策略!
最近,在写一些东西的时候,需要用到CImage类将JPG各式的图片转换成BMP图片,传入的是图片的绝对地址:如C:\Users\Administrator\Documents\Visual Studi ...
- CImage类
CImage封装了DIB(设备无关位图)的功能,因而可以让我们能够处理每个位图像素.这里介绍GDI+和CImage的一般使用方法和技巧. TAG: GDI CImage 后处理 我们知道,Vi ...
随机推荐
- 第七篇、使用UIView的animateWithDuration方法制作简易动画
import UIKit class LolitaCircleButton: UIButton { private var color: UIColor private var imageURL: S ...
- requirejs实验001.对我来说,用AMD的方式来组织代码并不轻松.
http://www.requirejs.org/ http://www.requirejs.cn/ http://requirejs.readthedocs.org/en/1.0.1/ 目录结构: ...
- 09_rlCoachKin讲解
在Socket.cpp中Socket::readClient()函数中就是解析读取到的内容的. 对于我们发送的2 0 1.57 0.31 0 0 1.57 0,那么就会进入如下分支: 也就是进入2号处 ...
- makefile missing separator. Stop
ifneq ($(KERNELRELEASE),) obj-m := hello.o else PWD := $(shell pwd) KVER := $(shell uname -r) KDIR : ...
- IOS中一个简单的粒子效果实现
1.效果图展示 2.实现思路 1> 首先要实现上面的效果,第一步要处理的就是一个简单的画板,在View上面用鼠标滑动的时候画出线条,这个功能可使用UIBezierPath实现 2> 关于粒 ...
- 3dmax详细讲解全套攻略在线视频教程
课程目录 试学课 课时11MAX2012学习软件指导 试学课 课时22MAX2012界面介绍 试学课 课时33MAX2012工作准备设置 试学课 课时44长方体的创建 试学课 课时55圆锥体的创建 试 ...
- PHP 魔术方法 __sleep __wakeup(四)
串行化serialize可以把变量包括对象,转化成连续bytes数据. 你可以将串行化后的变量存在一个文件里或在网络上传输. 然后再反串行化还原为原来的数据. 你在反串行化类的对象之前定义的类,PHP ...
- 非常出色的一款WinForm窗体重绘GUI类库源码
基本控件的演示 ScrollBar滚动条 各种圆形进度条 ProgressBar进度条 Mdi演示,仿谷歌浏览器 多种皮肤可供选择 一套专业级别的GUI控件,目前包含了窗体.进度条.滚动条以及MDI多 ...
- @Html.TextBox 的使用
@Html.TextBox( }); //限制 text 的最大输入字符数为 10个 @Html.TextBox("users","",new {@class= ...
- fedora 取消自动升级
fedora启动时经常CPU使用很高,看下进程原来是yumBackend.这是个yum的自动更新进程 只要关闭自动更新就可以了 gsettings set org.gnome.settings-dae ...