亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? bitmappicture.cpp

?? 實(shí)時(shí)監(jiān)控
?? CPP
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//  CBitmapPicture (Implementations) Version 1.00
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//  COPYFREE (F) - ALL RIGHTS FREE
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

// BitmapPicture.cpp: implementation of the CBitmapPicture class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "../Resource.h"
#include "BitmapPicture.h"
#include "common.h"

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

#define HIMETRIC_INCH 2540
#define ERROR_TITLE IDString(IDS_BITMAP_ERROR) // Error Title (Related To This Class)...

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

CBitmapPicture::CBitmapPicture()
{
	m_IPicture = NULL;
	m_Height = 0;
	m_Weight = 0;
	m_Width = 0;
}

CBitmapPicture::~CBitmapPicture()
{
	if(m_IPicture != NULL) FreePictureData(); // Important - Avoid Leaks...
}

//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// PUBLIC
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------

// Does:   Open a Resource And Load It Into IPicture (Interface)
// ~~~~    (.BMP .DIB .EMF .GIF .ICO .JPG .WMF)
//
// Note:   When Adding a Bitmap Resource It Would Automatically Show On "Bitmap"
// ~~~~    This NOT Good Coz We Need To Load It From a Custom Resource "BMP"
//         To Add a Custom Rresource: Import Resource -> Open As -> Custom
//         (Both .BMP And .DIB Should Be Found Under "BMP")
//
// InPut:  ResourceName - As a UINT Defined (Example: IDR_PICTURE_RESOURCE)
// ~~~~~   ResourceType - Type Name (Example: "JPG")
//
// OutPut: TRUE If Succeeded...
// ~~~~~~
// Author: Dr. Yovav Gad, EMail: Sources@SuperMain.com ,Web: www.SuperMain.com
//=============================================================================
//-----------------------------------------------------------------------------
BOOL CBitmapPicture::Load(UINT ResourceName, CString ResourceType)
//=============================================================================
{
	//Free Bitmap if allocated
	DeleteObject();

	BOOL bResult = FALSE;

	HGLOBAL		hGlobal = NULL;
	HRSRC		hSource = NULL;
	LPVOID		lpVoid  = NULL;
	int			nSize   = 0;

	if(m_IPicture != NULL) FreePictureData(); // Important - Avoid Leaks...

	if(ResourceType==_T("BMP"))
		return LoadStandardResource(ResourceName,ResourceType);

	if(!hSource) hSource = FindResource(AfxGetResourceHandle(), MAKEINTRESOURCE(ResourceName), ResourceType);

	if(hSource == NULL)
		{
		HWND hWnd = AfxGetApp()->GetMainWnd()->m_hWnd;
		MessageBoxEx(hWnd, _T("FindResource() Failed\t"), ERROR_TITLE, MB_OK | MB_ICONSTOP, LANG_ENGLISH);
		return(FALSE);
		}

	hGlobal = LoadResource(AfxGetResourceHandle(), hSource);
	if(hGlobal == NULL)
		{
		HWND hWnd = AfxGetApp()->GetMainWnd()->m_hWnd;
		MessageBoxEx(hWnd, _T("LoadResource() Failed\t"), ERROR_TITLE, MB_OK | MB_ICONSTOP, LANG_ENGLISH);
		return(FALSE);
		}

	lpVoid = LockResource(hGlobal);
	if(lpVoid == NULL)
		{
		HWND hWnd = AfxGetApp()->GetMainWnd()->m_hWnd;
		MessageBoxEx(hWnd, _T("LockResource() Failed\t"), ERROR_TITLE, MB_OK | MB_ICONSTOP, LANG_ENGLISH);
		return(FALSE);
		}

	nSize = (UINT)SizeofResource(AfxGetResourceHandle(), hSource);
	if(LoadPictureData((BYTE*)hGlobal, nSize)) bResult = TRUE;

	UnlockResource(hGlobal); // 16Bit Windows Needs This
	FreeResource(hGlobal); // 16Bit Windows Needs This (32Bit - Automatic Release)

	m_Weight = nSize; // Update Picture Size Info...

	if(m_IPicture != NULL) // Do Not Try To Read From Memory That Is Not Exist...
		{ 
		m_IPicture->get_Height(&m_Height);
		m_IPicture->get_Width(&m_Width);
	    // Calculate Its Size On a "Standard" (96 DPI) Device Context
	    m_Height = MulDiv(m_Height, 96, HIMETRIC_INCH);
	    m_Width  = MulDiv(m_Width,  96, HIMETRIC_INCH);
		}
	else // Picture Data Is Not a Known Picture Type
		{
		m_Height = 0;
		m_Width = 0;
		bResult = FALSE;
		}

	if(bResult) return(CreatePanoramaBitmap());
	else return(bResult);
}

//-----------------------------------------------------------------------------
// Does:   Open a File And Load It Into IPicture (Interface)
// ~~~~    (.BMP .DIB .EMF .GIF .ICO .JPG .WMF)
//
// InPut:  sFilePathName - Path And FileName Target To Save
// ~~~~~   
//
// OutPut: TRUE If Succeeded...
// ~~~~~~
// Author: Dr. Yovav Gad, EMail: Sources@SuperMain.com ,Web: www.SuperMain.com
//=============================================================================
//-----------------------------------------------------------------------------
BOOL CBitmapPicture::Load(CString sFilePathName)
//=============================================================================
{
	//Free Bitmap if allocated
	DeleteObject();

	BOOL bResult = FALSE;
	CFile PictureFile;
	CFileException e;
	int	nSize = 0;

	if(m_IPicture != NULL) FreePictureData(); // Important - Avoid Leaks...

	if(PictureFile.Open(sFilePathName, CFile::modeRead | CFile::typeBinary, &e))
		{
		nSize = PictureFile.GetLength();
		BYTE* pBuffer = new BYTE[nSize];
	
		if(PictureFile.Read(pBuffer, nSize) > 0)
			{
			if(LoadPictureData(pBuffer, nSize))	bResult = TRUE;
			}

		PictureFile.Close();
		delete [] pBuffer;
		}
	else // Open Failed...
		{
		TCHAR szCause[255];
		e.GetErrorMessage(szCause, 255, NULL);
		HWND hWnd = AfxGetApp()->GetMainWnd()->m_hWnd;
		MessageBoxEx(hWnd, szCause, ERROR_TITLE, MB_OK | MB_ICONSTOP, LANG_ENGLISH);
		bResult = FALSE;
		}

	m_Weight = nSize; // Update Picture Size Info...

	if(m_IPicture != NULL) // Do Not Try To Read From Memory That Is Not Exist...
		{ 
		m_IPicture->get_Height(&m_Height);
		m_IPicture->get_Width(&m_Width);
	    // Calculate Its Size On a "Standard" (96 DPI) Device Context
	    m_Height = MulDiv(m_Height, 96, HIMETRIC_INCH);
	    m_Width  = MulDiv(m_Width,  96, HIMETRIC_INCH);
		}
	else // Picture Data Is Not a Known Picture Type
		{
		m_Height = 0;
		m_Width = 0;
		bResult = FALSE;
		}

	if(bResult) return(CreatePanoramaBitmap());
	else return(bResult);
}

BOOL CBitmapPicture::SelectFileAndLoad()
{
	 CString DefExt = _T("jpg");
	 DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT;
	 CString Filter = _T("All Supported Image files|*.jpg;*.jif;*.jpeg;*.gif;*.bmp;*.dib;|JPG - JFIF Compliant (*.jpg,*.jif,*.jpeg)|*.jpg;*.jif,*.jpg|CompuServe Graphics Interchange (*.gif)|*.gif|Windows or OS/2 Bitmap (*.bmp)|*.bmp|Windows or OS/2 DIB (*.dib)|*.dib||");
	 CFileDialog FileDialog(TRUE,DefExt,NULL,dwFlags,Filter,NULL);
	 if(FileDialog.DoModal()==IDOK)
	 {
		return Load(FileDialog.GetPathName());
	 }

	return FALSE;
}

//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// PRIVATE
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------

//-----------------------------------------------------------------------------
// Does:   Free The Allocated Memory That Holdes The IPicture Interface Data
// ~~~~    And Clear Picture Information
//
// Note:   This Might Also Be Useful If U Only Need To Show The Picture Once
// ~~~~~   Or If U Copy The Picture To The Device Context, So It Can Still
//         Remain On Screen - But IPicture Data Is Not Needed No More
//

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕在线观看一区| 国产美女精品在线| 五月天欧美精品| 97se狠狠狠综合亚洲狠狠| 色偷偷成人一区二区三区91 | 国产精品成人网| 欧美专区亚洲专区| 日韩一区二区高清| 亚洲一区二区三区视频在线播放| 久久免费的精品国产v∧| 亚洲狼人国产精品| 在线日韩一区二区| 国产精品久久看| 在线视频中文字幕一区二区| 国产精品原创巨作av| 亚洲一区二区三区小说| 亚洲综合色丁香婷婷六月图片| 欧洲国内综合视频| 国产三级精品三级在线专区| 国产亚洲美州欧州综合国| 97久久超碰国产精品电影| 久久99久久99小草精品免视看| 久久久激情视频| 91麻豆精品国产| 亚洲欧美一区二区三区孕妇| 成人在线综合网| 国产一区二区精品久久99| 欧美色图片你懂的| 成人av电影免费在线播放| 国产色91在线| 亚洲一区二区在线免费观看视频| 色爱区综合激月婷婷| 91在线看国产| 久久影院视频免费| 欧美日韩dvd在线观看| 69av一区二区三区| 久久国产精品第一页| 韩国av一区二区三区| 国产精品99久久不卡二区| 天使萌一区二区三区免费观看| 亚洲成a人v欧美综合天堂| 日韩不卡免费视频| 久久精品人人做人人综合| 国产精品一二三区在线| 亚洲精品视频在线观看网站| 国产乱国产乱300精品| 欧美日韩一区成人| 激情小说欧美图片| 国产精品无遮挡| 欧美久久久久久久久中文字幕| 狠狠久久亚洲欧美| 日韩美女在线视频| 日韩一级片在线播放| 91麻豆精品国产91久久久资源速度| 91免费视频大全| 91蜜桃传媒精品久久久一区二区| 国产成人精品一区二| 国产一区二区女| 色诱视频网站一区| 欧美不卡123| 亚洲一区二区三区四区在线观看 | 成人污视频在线观看| 欧美国产日韩亚洲一区| 日韩美女久久久| 国产精品久久久久久久第一福利 | 盗摄精品av一区二区三区| 91农村精品一区二区在线| 欧美午夜精品免费| 精品国产乱子伦一区| 精品福利av导航| 亚洲欧美另类在线| 青娱乐精品视频在线| 国产69精品一区二区亚洲孕妇| 色哟哟国产精品免费观看| 日韩一级免费一区| 国产女人水真多18毛片18精品视频| 亚洲国产经典视频| 黄色成人免费在线| 91成人在线免费观看| 精品入口麻豆88视频| 亚洲午夜国产一区99re久久| 国产精品一区二区久久不卡| 成人免费看视频| 8v天堂国产在线一区二区| 亚洲精品成人少妇| 久久99深爱久久99精品| 91久久香蕉国产日韩欧美9色| 欧美一区二视频| 午夜视频一区二区| 日本久久精品电影| 国产精品国产三级国产aⅴ原创| 成人免费毛片app| 欧美精品亚洲二区| 亚洲v日本v欧美v久久精品| 在线免费视频一区二区| 亚洲美女在线国产| 99久久er热在这里只有精品15 | 久久超碰97人人做人人爱| 欧美性猛交xxxxxx富婆| 亚洲免费视频中文字幕| 国产成人免费在线视频| 久久久久国产精品麻豆| 国产在线视频精品一区| 久久综合九色综合97婷婷| 蓝色福利精品导航| 精品日韩欧美一区二区| 国产一区二区三区香蕉| 日韩欧美你懂的| 国产精品亚洲成人| 亚洲免费视频中文字幕| 欧美色大人视频| 久久99国内精品| 亚洲美女区一区| 欧美主播一区二区三区| 日韩国产成人精品| 久久精品亚洲精品国产欧美kt∨| 国产麻豆精品在线观看| 国产女人18毛片水真多成人如厕| 不卡一卡二卡三乱码免费网站| 亚洲欧美一区二区不卡| 在线视频国内自拍亚洲视频| 日本不卡的三区四区五区| 亚洲乱码国产乱码精品精的特点 | 欧美日韩久久不卡| 激情综合色综合久久综合| 亚洲精品中文在线| 久久综合成人精品亚洲另类欧美| 99在线精品观看| 激情综合五月婷婷| 日韩高清在线观看| 亚洲精品免费在线观看| 久久色在线观看| 日韩精品在线一区二区| 日本高清无吗v一区| 99久久婷婷国产| 久久国产精品免费| 国产精品另类一区| 亚洲精品在线一区二区| 欧美精品vⅰdeose4hd| 欧美日韩国产免费一区二区| 99r精品视频| 国产成人精品亚洲777人妖| 久久精品二区亚洲w码| 亚洲成人自拍偷拍| 中文字幕一区二区三区av| 国产性色一区二区| 久久久久亚洲综合| 久久久精品影视| 久久婷婷成人综合色| 中文字幕一区二区三区视频| 国产视频一区二区在线| 久久久久久久综合日本| 自拍偷拍国产精品| 亚洲最大色网站| 精品一区二区在线视频| 成人久久久精品乱码一区二区三区| 成人午夜碰碰视频| 国产区在线观看成人精品| 亚洲精品视频一区| 韩国毛片一区二区三区| 成人午夜电影久久影院| 欧美网站大全在线观看| 欧美一级二级在线观看| 中文字幕亚洲综合久久菠萝蜜| 1000部国产精品成人观看| 亚洲国产精品欧美一二99 | 337p粉嫩大胆噜噜噜噜噜91av | 国产精品国产三级国产| 亚洲美女视频在线| 日韩国产在线观看一区| 国产一区二区三区电影在线观看| av在线一区二区| 精品日韩99亚洲| 一区二区免费视频| 成人一级视频在线观看| 在线观看三级视频欧美| 26uuu久久综合| 美女视频网站黄色亚洲| 色综合久久88色综合天天免费| 欧美成人女星排名| 一区二区三区欧美视频| 国产麻豆精品久久一二三| 欧美日韩一区二区三区免费看| 国产午夜亚洲精品羞羞网站| 久久国产精品色| 欧美福利视频导航| 午夜精彩视频在线观看不卡| 成人app软件下载大全免费| 欧美成人精品3d动漫h| 日韩电影免费在线| 51精品视频一区二区三区| 亚洲在线一区二区三区| 欧美色图片你懂的| 亚洲成av人片www| 91精品婷婷国产综合久久| 午夜欧美在线一二页| 日韩一区二区精品葵司在线| 男人的天堂久久精品| 日韩一二三四区| 国产精品资源网站|