📄 predialog.h
字号:
/*########################################################################
【文件名】: PreDialog.h
【名 称】: DataWin 封装类.
【版 本】: 1.0
【作 者】: 梁均源
【E-mail】: KelvinSpace@citiz.net
注意:必需保留以上信息!!!
########################################################################*/
// PreDialog.h: interface for the PreDialog class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_CPREDIALOG_H__85295241_75D2_11D9_AF5D_0050BAB04A6A__INCLUDED_)
#define AFX_CPREDIALOG_H__85295241_75D2_11D9_AF5D_0050BAB04A6A__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DataWin.h : header file
//
#define PNS_DATABASE 0x000000010 //数据项目
#define PND_MAX_NAME 256 //默认名称最大字数
///////////////////////////////////////////////////////////
//对双缓存的控制
//缓存状态被改变后,并不马上生效,它必须在OnPaint事件中
//进行状态转换,这样做是为了避免在执行OnPaint事件时,
//刚好删除m_bkBitamp画面会乱,也不知道有没有这种可能了
#define PNR_DELETERAM -1 //删除缓存
#define PNR_DISABLEDRAM 0 //禁用缓存
#define PNR_CREATERAM 1 //创建缓存
#define PNR_USEDRAM 2 //正在使用缓存
#define PNR_REFURBISHRAM 3 //更新缓存
/////////////////////////////////////////////////////////////////
//记录DataWin窗口内的所有控件
////////////////////////////////////////////////////////////////
typedef struct tagDATAWINDOWVIEW
{
HWND hWnd ; //窗口句柄
WNDPROC wpPrev; // 子类化之前的窗口回调函数地址
DWORD dwStyle; //窗口样式
DWORD dwStyleEx; //窗口扩展样式
RECT Rect; //窗口大小
int nID; //窗口ID
char szName[PND_MAX_NAME+1]; //窗口名称
char szType[PND_MAX_NAME+1]; //窗口类型
struct tagDATAWINDOWVIEW * pNext; // 指向下一个 CLASSXP 结构,这里采用单向链表结构
}DATAWINDOWVIEW, *PDATAWINDOWVIEW;
class CPreDialog
{
protected:
CDialog *m_pDialog;
CString m_strFileName;
CString m_strReport;
CString m_strSQL;
LOGFONT m_Font;
CRect m_Rect;
//枚举窗口控件
PDATAWINDOWVIEW m_pDataWindow; //窗口控件属性表链指针,枚举时使用
public:
BOOL fnDelClassChild(); //删除表连
BOOL fnEnumControl(); //枚举窗口控件
static BOOL CALLBACK fnEnumWndProc(HWND hWnd, LPARAM lParam);//枚举返回函数
static PDATAWINDOWVIEW WINAPI fnCreateClassChild(HWND hWnd, void *lParam); //创建表连
static PDATAWINDOWVIEW fnGetClassChild(PDATAWINDOWVIEW pDataWindow,
HWND hWnd, char *szType = 0);//取表连
public:
//从文件导入、保存到文件、从窗体中导入
BOOL LoadFile(LPCSTR lpFileName, LPCSTR lpReport);
BOOL SaveFile(LPCSTR lpFileName, LPCSTR lpReport);
BOOL Enum(CDialog *pDlg);
PDATAWINDOWVIEW GetControl();
LPCSTR GetSQL();
LOGFONT *GetFont();
void GetRect(CRect &Rect);
CPreDialog();
virtual ~CPreDialog();
void Release();
// DECLARE_MESSAGE_MAP()
};
#endif // !defined(AFX_CPREDIALOG_H__85295241_75D2_11D9_AF5D_0050BAB04A6A__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -