📄 imageprocessctl.h
字号:
#if !defined(AFX_IMAGEPROCESSCTL_H__17A90575_A273_11D6_A0F2_0080C8EBBC7D__INCLUDED_)
#define AFX_IMAGEPROCESSCTL_H__17A90575_A273_11D6_A0F2_0080C8EBBC7D__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// ImageProcessCtl.h : Declaration of the CImageProcessCtrl ActiveX Control class.
/////////////////////////////////////////////////////////////////////////////
// CImageProcessCtrl : See ImageProcessCtl.cpp for implementation.
class CImageProcessCtrl : public COleControl
{
DECLARE_DYNCREATE(CImageProcessCtrl)
// Constructor
public:
CImageProcessCtrl();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CImageProcessCtrl)
public:
virtual void OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
virtual void DoPropExchange(CPropExchange* pPX);
virtual void OnResetState();
//}}AFX_VIRTUAL
// Implementation
protected:
~CImageProcessCtrl();
DECLARE_OLECREATE_EX(CImageProcessCtrl) // Class factory and guid
DECLARE_OLETYPELIB(CImageProcessCtrl) // GetTypeInfo
DECLARE_PROPPAGEIDS(CImageProcessCtrl) // Property page IDs
DECLARE_OLECTLTYPE(CImageProcessCtrl) // Type name and misc status
// Message maps
//{{AFX_MSG(CImageProcessCtrl)
// NOTE - ClassWizard will add and remove member functions here.
// DO NOT EDIT what you see in these blocks of generated code !
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
// Dispatch maps
//{{AFX_DISPATCH(CImageProcessCtrl)
afx_msg BOOL _Clear();
afx_msg BOOL _ReadBMPFile(LPCTSTR strFileName);
afx_msg BOOL _ConvterToGrayBMP();
afx_msg BOOL _FilterMean();
afx_msg BOOL _SaveGrayBMPFile(LPCTSTR strFileName);
//}}AFX_DISPATCH
DECLARE_DISPATCH_MAP()
afx_msg void AboutBox();
// Event maps
//{{AFX_EVENT(CImageProcessCtrl)
//}}AFX_EVENT
DECLARE_EVENT_MAP()
// Dispatch and event IDs
public:
BOOL Show256DIB_vfw(HDC hdc, HANDLE hDIB);
enum {
//{{AFX_DISP_ID(CImageProcessCtrl)
dispidClear = 1L,
dispidReadBMPFile = 2L,
dispidConvterToGrayBMP = 3L,
dispidFilterMean = 4L,
dispidSaveGrayBMPFile = 5L,
//}}AFX_DISP_ID
};
private:
HANDLE Create256DIB(DWORD dwWidth, DWORD dwHeight, BYTE *pImgData);
LPBYTE m_lp24ImgBits; //真彩色数据指针
LPBYTE m_lp8ImgBits; //8位图数据指针
long m_lngWidth; //图像宽
long m_lngHeight; //图像高
long m_lng24WidthBytes; //宽对齐后的字节数
long m_lng8WidthBytes;
unsigned long m_ulng24BitsCount; //图像数据数
unsigned long m_ulng8BitsCount;
LPBYTE m_lpBMPFileData; //BMP文件数据
LPBYTE m_lp8ImgBitsMove; //移动指针
LPBYTE m_lp24ImgBitsMove;
HANDLE m_h8ImgDIB; //DIB数据句柄
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_IMAGEPROCESSCTL_H__17A90575_A273_11D6_A0F2_0080C8EBBC7D__INCLUDED)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -