bmptojpeg2k.cpp

来自「基于混沌系统的图像加密算法」· C++ 代码 · 共 84 行

CPP
84
字号
// BMPTOJPEG2K.cpp : implementation file
//

#include "stdafx.h"
#include "infohide.h"
#include "BMPTOJPEG2K.h"

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

/////////////////////////////////////////////////////////////////////////////
// BMPTOJPEG2K dialog


BMPTOJPEG2K::BMPTOJPEG2K(CWnd* pParent /*=NULL*/)
	: CDialog(BMPTOJPEG2K::IDD, pParent)
{
	//{{AFX_DATA_INIT(BMPTOJPEG2K)
	m_bmpstring = _T("");
	m_jpegstring = _T("");
	//}}AFX_DATA_INIT
}


void BMPTOJPEG2K::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(BMPTOJPEG2K)
	DDX_Text(pDX, IDC_BMPSTR, m_bmpstring);
	DDX_Text(pDX, IDC_JPEGSTR, m_jpegstring);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(BMPTOJPEG2K, CDialog)
	//{{AFX_MSG_MAP(BMPTOJPEG2K)
	ON_BN_CLICKED(IDC_BMPBTN, OnBmpbtn)
	ON_BN_CLICKED(IDCJPEGBTN, OnCjpegbtn)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// BMPTOJPEG2K message handlers
typedef  bool(__stdcall CHANGE)(char *,char *);

void BMPTOJPEG2K::OnOK() 
{
	// TODO: Add extra validation here
	UpdateData(TRUE);
	HINSTANCE hInst;
	CHANGE *pFunc;/*/D:\\Program Files\\Borland\\CBuilder6\\Projects\\*/
	hInst = ::LoadLibrary("jpgdll.dll");
	pFunc = (CHANGE*)::GetProcAddress(hInst,"BmpToJpg");
	pFunc(m_bmpstring.GetBuffer(50),m_jpegstring.GetBuffer(50));
	m_bmpstring.ReleaseBuffer();
	m_jpegstring.ReleaseBuffer();
	::FreeLibrary(hInst);
	
	CDialog::OnOK();
}

void BMPTOJPEG2K::OnBmpbtn() 
{
	// TODO: Add your control notification handler code here
	CFileDialog dlg(TRUE,"bmp",NULL,OFN_HIDEREADONLY |OFN_OVERWRITEPROMPT,"Bmp File(*.bmp)|*.bmp||");
	if(dlg.DoModal()==IDOK){
		m_bmpstring = dlg.GetPathName();
		UpdateData(FALSE);
	}
}

void BMPTOJPEG2K::OnCjpegbtn() 
{
	// TODO: Add your control notification handler code here
	CFileDialog dlg(FALSE,"jpg",NULL,OFN_HIDEREADONLY |OFN_OVERWRITEPROMPT,"Jpg File(*.jpg)|*.jpg||");
	if(dlg.DoModal()==IDOK){
		m_jpegstring = dlg.GetPathName();
		UpdateData(FALSE);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?