You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

154 lines
3.3 KiB
C

2 years ago
#pragma once
// <20><><EFBFBD><EFBFBD>˫<EFBFBD><CBAB>ͼ<EFBFBD><CDBC>ʱ<EFBFBD><CAB1><EFBFBD>Ѱ<EFBFBD><D1B0><EFBFBD>
// flag = 0: <20>Ѱ<EFBFBD><D1B0><EFBFBD>
// flag = 1: <20>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
typedef void (CALLBACK* SendPixXYOffsetProc)(CPoint xy, int flag);
// <20><><EFBFBD><EFBFBD>˫<EFBFBD><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD>е<EFBFBD><D0B5>ļн<C4BC>
typedef void (CALLBACK* SendAngleProc)(double angle);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAB0B4>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><C4B5>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>ͽǶ<CDBD>
typedef void (CALLBACK* SendDistRatioAndAngleProc)(double distRatio, double angle);
// ֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ʾ<EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˫<EFBFBD><CBAB>
typedef void (CALLBACK* SendLButtonDblClkInfoProc)();
// ֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ʾ<EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҽ<EFBFBD><D2BC><EFBFBD><EFBFBD><EFBFBD> 1<><31>Ctrl
typedef void (CALLBACK* SendButtonDownInfoProc)(int type);
// <20><><EFBFBD><EFBFBD> ͼ<><CDBC><EFBFBD><EFBFBD>ʾ<EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD>
class CSimpleImgShowDlg;
class AFX_CLASS_EXPORT CExportSimpleImgShow: public CObject
{
public:
CExportSimpleImgShow(void);
~CExportSimpleImgShow(void);
public:
/************************************************************************/
/* part 1<><31><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>١<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ע<EFBFBD><D7A2> */
/************************************************************************/
// 1 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
// <20><><EFBFBD>
// 1. hParentWnd: <20><><EFBFBD><EFBFBD><EFBFBD>ھ<EFBFBD><DABE><EFBFBD>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>TRUE<55><45><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD>FALSE
BOOL CreateWnd(const HWND hParentWnd);
// 2 <20><><EFBFBD>ܣ<EFBFBD><DCA3>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ʾ<EFBFBD><CABE><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD>ָ<EFBFBD><D6B8>λ<EFBFBD><CEBB>
// <20><><EFBFBD>
// 1. clientRect<63><74><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void MoveWnd(const CRect &clientRect);
// 3 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD>ʾSW_SHOW <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> SW_HIDE <20><><EFBFBD><EFBFBD>
// <20><><EFBFBD>
// 1. nCmdShow<6F><77>SW_SHOW <20><> SW_HIDE
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void ShowWnd(const int nCmdShow);
// 4 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD>ʾһ֡ͼ<D6A1><CDBC>
// <20><><EFBFBD>
// 1. pImgInfo<66><6F>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>Ϣͷ
// 2. pImgData<74><61>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>TRUE<55><45><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD>FALSE
BOOL ShowImage(const BITMAPINFO* pImgInfo, BYTE* pImgData);
// 5 <20><><EFBFBD>ܣ<EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>ʾ<EFBFBD><CABE><EFBFBD>ڣ<EFBFBD>ͬʱ<CDAC>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD>Դ
// <20><><EFBFBD><EFBFBD><EBA3BA>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void DestroyWnd();
// 6 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ûص<C3BB><D8B5><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD>
// 1. fun <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void SetCallBackFun(SendPixXYOffsetProc fun);
// 7 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ûص<C3BB><D8B5><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD>
// 1. fun <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void SetCallBackFun(SendAngleProc fun);
// 8 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ûص<C3BB><D8B5><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD>
// 1. fun <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void SetCallBackFun(SendDistRatioAndAngleProc fun);
// 9 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ûص<C3BB><D8B5><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD>
// 1. fun <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void SetCallBackFun(SendLButtonDblClkInfoProc fun);
// 10 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǶԻ<C7B6><D4BB><EFBFBD>
// <20><><EFBFBD>
// 1. bMark: <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
// 2. bEnhance: <20><>ǿ<EFBFBD>ù<EFBFBD><C3B9><EFBFBD>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void MarkDialog(bool bMark, bool bEnhance = false);
// 11 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ûص<C3BB><D8B5><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD>
// 1. fun <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
//
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void SetCallBackFun(SendButtonDownInfoProc fun);
// 12 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0>ʾͼ<CABE><CDBC>
// <20><><EFBFBD>
// <20><>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// 1<><31>imgWidth ͼ<><CDBC><EFBFBD><EFBFBD>
// 2<><32>imgHeight ͼ<><CDBC><EFBFBD><EFBFBD>
// 3<><33>bitCount ͼ<><CDBC>λ<EFBFBD><CEBB>
// 4<><34>pImgData ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
// <20><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>
// <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>true,ʧ<>ܷ<EFBFBD><DCB7><EFBFBD>false
bool GetCurrentImg(int &imgWidth, int &imgHeight, int& bitCount, unsigned char* &pImgData);
// 13 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD>
// 1. str <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20><>
// <20><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>
// <20><>
void SetThemeText(CString str);
// 13 <20><><EFBFBD>ܣ<EFBFBD><DCA3>ر<EFBFBD><D8B1>Ҽ<EFBFBD><D2BC>˵<EFBFBD>
void CloseRightBtnDownMenu(bool bClose = true);
// 14 <20><><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
void ClearImg();
private:
CSimpleImgShowDlg* m_ShowDlg; // MFC <20>Ի<EFBFBD><D4BB><EFBFBD>
};