资源简介

MFC自绘CListCtrl实现漂亮聊天列表

资源截图

代码片段和文件信息

/************************************************************************ 
* 程序名:    精仿QQ主界面 
* 制作人:    李克平 2011年04月11日
* 版本号:    1.0 
************************************************************************/ 
// EnBitmap.cpp: implementation of the CEnBitmap class.
//
//////////////////////////////////////////////////////////////////////

#include “stdafx.h“
#include “EnBitmap.h“
#include 

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

const int HIMETRIC_INCH = 2540;

enum 
{
FT_BMP
FT_ICO
FT_JPG
FT_GIF

FT_UNKNOWN
};

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CEnBitmap::CEnBitmap()
{

}

CEnBitmap::~CEnBitmap()
{

}

BOOL CEnBitmap::LoadImage(UINT uIDRes LPCTSTR szResourceType HMODULE hInst COLORREF crBack)
{
ASSERT(m_hobject == NULL);      // only attach once detach on destroy

if (m_hobject != NULL)
return FALSE;

return Attach(LoadImageResource(uIDRes szResourceType hInst crBack));
}

BOOL CEnBitmap::LoadImage(LPCTSTR szImagePath COLORREF crBack)
{
//如果原先存在就去除
if (m_hobject != NULL)
{
Deleteobject();
Detach();
}

return Attach(LoadImageFile(szImagePath crBack));
}

HBITMAP CEnBitmap::LoadImageFile(LPCTSTR szImagePath COLORREF crBack)
{
int nType = GetFileType(szImagePath);

switch (nType)
{
// the reason for this is that i suspect it is more efficient to load
// bmps this way since it avoids creating device contexts etc that the 
// IPicture methods requires. that method however is still valuable
// since it handles other image types and transparency
case FT_BMP:
return (HBITMAP)::LoadImage(NULL szImagePath IMAGE_BITMAP 0 0 LR_LOADFROMFILE);

case FT_UNKNOWN:
return NULL;

default: // all the rest
{
USES_CONVERSION;
IPicture* pPicture = NULL;

HBITMAP hbm = NULL;
HRESULT hr = OleLoadPicturePath(T2OLE(szImagePath) NULL 0 crBack IID_IPicture (LPVOID *)&pPicture);

if (pPicture)
{
hbm = ExtractBitmap(pPicture crBack);
pPicture->Release();
}

return hbm;
}
}

return NULL; // can‘t get here
}

HBITMAP CEnBitmap::LoadImageResource(UINT uIDRes LPCTSTR szResourceType HMODULE hInst COLORREF crBack)
{
BYTE* pBuff = NULL;
int nSize = 0;
HBITMAP hbm = NULL;

// first call is to get buffer size
if (GetResource(MAKEINTRESOURCE(uIDRes) szResourceType hInst 0 nSize))
{
if (nSize > 0)
{
pBuff = new BYTE[nSize];

// this loads it
if (GetResource(MAKEINTRESOURCE(uIDRes) szResourceType hInst pBuff nSize))
{
IPicture* pPicture = LoadFromBuffer(pBuff nSize);

if (pPicture)
{
hbm = ExtractBitmap(pPicture crBack);
pPicture->Release();
}
}

delete [] pBuff;
}
}

r

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      36989  2011-04-11 14:45  FriendsListView\FriendsListView\EnBitmap.cpp

     文件       2883  2011-04-11 14:45  FriendsListView\FriendsListView\EnBitmap.h

     文件      13441  2016-01-05 13:28  FriendsListView\FriendsListView\ExtListCtrl.cpp

     文件       3571  2016-01-05 13:14  FriendsListView\FriendsListView\ExtListCtrl.h

     文件     110508  2015-12-31 17:19  FriendsListView\FriendsListView\FriendsListView.aps

     文件       1770  2015-12-29 06:46  FriendsListView\FriendsListView\FriendsListView.cpp

     文件        499  2015-12-29 06:46  FriendsListView\FriendsListView\FriendsListView.h

     文件       6840  2015-12-31 17:19  FriendsListView\FriendsListView\FriendsListView.rc

     文件       5745  2015-12-29 06:51  FriendsListView\FriendsListView\FriendsListView.vcproj

     文件       1417  2015-12-29 07:46  FriendsListView\FriendsListView\FriendsListView.vcproj.chenhui-PC.chenhui.user

     文件       7185  2016-01-05 09:48  FriendsListView\FriendsListView\FriendsListView.vcxproj

     文件       2829  2016-01-05 09:48  FriendsListView\FriendsListView\FriendsListView.vcxproj.filters

     文件        165  2015-12-30 15:49  FriendsListView\FriendsListView\FriendsListView.vcxproj.user

     文件      10391  2015-12-31 17:25  FriendsListView\FriendsListView\FriendsListViewDlg.cpp

     文件       1362  2015-12-31 17:21  FriendsListView\FriendsListView\FriendsListViewDlg.h

     文件         41  2016-01-05 09:47  FriendsListView\FriendsListView\MemDC.cpp

     文件        881  2016-01-05 13:18  FriendsListView\FriendsListView\MemDC.h

     文件       3013  2015-12-29 06:46  FriendsListView\FriendsListView\ReadMe.txt

     文件      67777  2007-11-28 16:21  FriendsListView\FriendsListView\res\FriendsListView.ico

     文件        371  2015-12-29 06:46  FriendsListView\FriendsListView\res\FriendsListView.rc2

     文件        776  2010-08-03 10:29  FriendsListView\FriendsListView\res\Hscrolled_arrow_left.bmp

     文件        776  2010-08-03 10:29  FriendsListView\FriendsListView\res\Hscrolled_arrow_right.bmp

     文件        236  2010-08-03 10:29  FriendsListView\FriendsListView\res\Hscrolled_slider_center.bmp

     文件        236  2010-08-03 10:29  FriendsListView\FriendsListView\res\Hscrolled_slider_left.bmp

     文件        416  2010-08-03 10:29  FriendsListView\FriendsListView\res\Hscrolled_slider_middle.bmp

     文件        236  2010-08-03 10:29  FriendsListView\FriendsListView\res\Hscrolled_slider_right.bmp

     文件        236  2010-08-03 10:29  FriendsListView\FriendsListView\res\Hscrolled_trough.bmp

     文件        776  2010-08-03 10:29  FriendsListView\FriendsListView\res\Vscrolled_arrow_down.bmp

     文件        776  2010-08-03 10:29  FriendsListView\FriendsListView\res\Vscrolled_arrow_up_over.bmp

     文件        248  2010-08-03 10:29  FriendsListView\FriendsListView\res\Vscrolled_slider_bottom.bmp

............此处省略37个文件信息

评论

共有 条评论