• 大小: 2.93MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-13
  • 语言: 其他
  • 标签: 翻牌游戏  3为1  

资源简介

翻牌游戏 翻牌之海贼王 3张图为一组 游戏

资源截图

代码片段和文件信息

#include “Bitmap.h“


Bitmap::Bitmap(HDC hDC LPTSTR szFileName) : m_hBitmap(NULL) m_iWidth(0) m_iHeight(0)
{
LoadFromFile(hDC szFileName);
}

// Create a bitmap from a resource
Bitmap::Bitmap(HDC hDC UINT uiResID HINSTANCE hInstance): m_hBitmap(NULL) m_iWidth(0) m_iHeight(0)
{
Create(hDC uiResID hInstance);
}

Bitmap::Bitmap(HDC hDC int iWidth int iHeight COLORREF crColor): m_hBitmap(NULL) m_iWidth(0) m_iHeight(0)
{
Create(hDC iWidth iHeight crColor);
}

Bitmap::~Bitmap()
{
Free();
}

void Bitmap::Free()
{
if (m_hBitmap != NULL)
{
Deleteobject(m_hBitmap);
m_hBitmap = NULL;
}
}

BOOL Bitmap::LoadFromFile(HDC hDC LPTSTR szFileName)
{
Free();

HANDLE hFile = CreateFile(
szFileName 
GENERIC_READ 
FILE_SHARE_READ 
NULL
OPEN_EXISTING 
FILE_ATTRIBUTE_NORMAL 
NULL
);
if(hFile == INVALID_HANDLE_VALUE)
return false;

BITMAPFILEHEADER bmfHeader;//位图文件头信息
DWORD dwBytesRead;
int bval = ReadFile(hFile &bmfHeadersizeof(BITMAPFILEHEADER)&dwBytesRead NULL);
if( (!bval) || (dwBytesRead!=sizeof(BITMAPFILEHEADER)) || (bmfHeader.bfType!=0x4D42))
{
CloseHandle(hFile);
Free();
return false;
}

BITMAPINFO bmi;
bval = ReadFile(hFile &bmi sizeof(BITMAPINFOHEADER) &dwBytesRead NULL);
if( (!bval) || (dwBytesRead!=sizeof(BITMAPINFOHEADER)))
{
CloseHandle(hFile);
Free();
return false;
}

m_iWidth = (int)bmi.bmiHeader.biWidth;
m_iHeight = (int)bmi.bmiHeader.biHeight;

m_hBitmap = (HBITMAP)LoadImage(NULL szFileName IMAGE_BITMAP 00LR_LOADFROMFILE|LR_CREATEDIBSECTION);
if(m_hBitmap == NULL)
return false;

return true;
}

BOOL Bitmap::Create(HDC hDC int iWidth int iHeight COLORREF crColor)
{
m_hBitmap = CreateCompatibleBitmap(hDC iWidth iHeight);
if (m_hBitmap == NULL)
return false;

m_iWidth = iWidth;
m_iHeight = iHeight;

HDC hMemDC = CreateCompatibleDC(hDC);

HBRUSH hBrush = CreateSolidBrush(crColor);

HBITMAP hOldBitmap = (HBITMAP)Selectobject(hMemDC m_hBitmap);

RECT rcBitmap = { 0 0 m_iWidth m_iHeight };
FillRect(hMemDC &rcBitmap hBrush);

Selectobject(hMemDC hOldBitmap);

DeleteDC(hMemDC);
Deleteobject(hBrush);

return true;
}

void Bitmap::Draw(HDC hDC int x int y)
{
if (m_hBitmap != NULL)
{
HDC hMemDC = CreateCompatibleDC(hDC);

HBITMAP hOldBitmap = (HBITMAP)Selectobject(hMemDC m_hBitmap);

BitBlt(hDC x y m_iWidth m_iHeight hMemDC 0 0 SRCCOPY);

Selectobject(hMemDC hOldBitmap);
DeleteDC(hMemDC);
}
}

void Bitmap::Draw(HDC hDC int x int y bool bTrans COLORREF crTransColor)
{
DrawPart(hDC x y 00GetWidth() GetHeight() bTrans crTransColor);
}

void Bitmap::DrawPart(HDC hDC int x int y int xPart int yPartint wPart int hPart bool bTrans COLORREF crTransColor)
{
if (m_hBitmap != NULL)
{
HDC hMemDC = CreateCompatibleDC(hDC);

HBITMAP hOldBitmap = (HBITMAP)Selectobject(hMemDC

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

     文件    1407488  2010-11-02 17:38  haizeifp\Debug\haizeifp.exe

     文件     544016  2010-11-02 17:38  haizeifp\Debug\haizeifp.ilk

     文件     543744  2010-11-02 17:38  haizeifp\Debug\haizeifp.pdb

     文件       4796  2010-10-23 12:45  haizeifp\haizeifp\Bitmap.cpp

     文件       1001  2010-10-23 13:15  haizeifp\haizeifp\Bitmap.h

     文件      37042  2010-10-23 13:16  haizeifp\haizeifp\Debug\Bitmap.obj

     文件       6596  2010-11-02 17:38  haizeifp\haizeifp\Debug\BuildLog.htm

     文件      28955  2010-11-02 17:38  haizeifp\haizeifp\Debug\haizei.obj

     文件        663  2010-10-23 14:06  haizeifp\haizeifp\Debug\haizeifp.exe.embed.manifest

     文件        728  2010-10-23 14:06  haizeifp\haizeifp\Debug\haizeifp.exe.embed.manifest.res

     文件        621  2010-11-02 17:38  haizeifp\haizeifp\Debug\haizeifp.exe.intermediate.manifest

     文件     680556  2010-10-23 16:51  haizeifp\haizeifp\Debug\haizeifp.res

     文件         67  2010-11-02 17:38  haizeifp\haizeifp\Debug\mt.dep

     文件     404480  2010-11-02 17:38  haizeifp\haizeifp\Debug\vc90.idb

     文件     118784  2010-11-02 17:38  haizeifp\haizeifp\Debug\vc90.pdb

     文件       8214  2010-11-02 17:38  haizeifp\haizeifp\haizei.cpp

     文件    1151948  2010-10-23 16:44  haizeifp\haizeifp\haizeifp.aps

     文件       2385  2010-10-23 16:44  haizeifp\haizeifp\haizeifp.rc

     文件       5019  2010-10-23 14:48  haizeifp\haizeifp\haizeifp.vcproj

     文件       1427  2010-11-23 14:16  haizeifp\haizeifp\haizeifp.vcproj.PC-201008281052.Administrator.user

     文件        766  2007-09-18 16:10  haizeifp\haizeifp\res\Brainiac.ico

     文件        318  2007-09-18 16:10  haizeifp\haizeifp\res\Brainiac_sm.ico

     文件      52328  2010-10-23 16:50  haizeifp\haizeifp\res\Tile1.bmp

     文件      52328  2010-10-23 16:50  haizeifp\haizeifp\res\Tile10.bmp

     文件      52328  2010-10-23 16:50  haizeifp\haizeifp\res\Tile11.bmp

     文件      52328  2010-10-23 16:50  haizeifp\haizeifp\res\Tile12.bmp

     文件      52328  2010-10-23 16:50  haizeifp\haizeifp\res\Tile2.bmp

     文件      52328  2010-10-23 16:50  haizeifp\haizeifp\res\Tile3.bmp

     文件      52328  2010-10-23 16:50  haizeifp\haizeifp\res\Tile4.bmp

     文件      52328  2010-10-23 16:50  haizeifp\haizeifp\res\Tile5.bmp

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

评论

共有 条评论