⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mdichild.h

📁 以前给一个印刷厂开发的业务管理软件
💻 H
字号:
// MDIChild.h: interface for the CMDIChild class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MDICHILD_H__3539C184_AAF5_4AF4_8228_F87B40B344F5__INCLUDED_)
#define AFX_MDICHILD_H__3539C184_AAF5_4AF4_8228_F87B40B344F5__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#define MDI_MAXNAME 256
//命令
//#define MDI_DISABLED 0x000000
//#define MDI_ENABLED  0x000001
//激活命令
#define MDI_AC_SETOLD      0x000001
#define MDI_AC_FRUSHOLD    0x000002
#define MDI_AC_RESTOREOLD  0x000004
#define MDI_AC_FRUSHNEW    0x000008
#define MDI_AC_SETNEW      0x000010
#define MDI_AC_STAND       0x00001E
typedef  struct  tagMDIDATA
{
	RECT rcMaxSize;            //最大窗口
	HWND hViewPre;             //前活动窗口
	HWND hViewActive;          //当前活动窗口
//	DWORD dwMainActive;          //主窗口
}
MDIDATA, *PMDIDATA;
typedef  struct tagMDICHILD
{
	HWND hView  ;              //主窗口
	HWND hParent;              //父窗口
	WNDPROC wpPrev;				// 子类化之前的窗口回调函数地址
	PMDIDATA pData  ;           //副数据
	char szName[MDI_MAXNAME];   //名称
	struct tagMDICHILD * pNext;	// 指向下一个 CLASSXP 结构,这里采用单向链表结构
}
MDICHILD, * PMDICHILD;
//extern PMDICHILD g_pMDIChild;		// 窗口的 CLASSXP 结构指针

class CMDIChild 
{
protected:

	static LRESULT CALLBACK MDIChildProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
	static LRESULT CALLBACK MDIMainProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
	static PMDICHILD GetClassParent(void);
public:
    static BOOL DelClassChild(HWND hWnd);
    static BOOL DelClassChild(CWnd *pWnd);
    static PMDICHILD m_pMDIChild;
	virtual void SetOnPreCreateWindow(CREATESTRUCT *cs);
	static PMDICHILD GetClassChild(HWND hWnd = NULL);
	static PMDICHILD GetClassChild(LPCSTR lpName);
	static LRESULT DrawTitle(HWND hWnd, BOOL bActive = TRUE);
	static void SetActive(HWND hNew, HWND hOld, UINT nType = TRUE);
	static void InitialUpdateFrame();

    BOOL SetActiveRect(RECT *pRect);
	int InitMainWnd(CWnd *pWnd, RECT *pRect = NULL);
	BOOL UninitMainWnd(void);
	int ADD(CView *pView,LPCSTR lpName, UINT nType = SW_SHOW/* SW_MAXIMIZE*/);
	CMDIChild();
	virtual ~CMDIChild();
};
//void CMDIChild::m_pMDIChild=NULL;

#endif // !defined(AFX_MDICHILD_H__3539C184_AAF5_4AF4_8228_F87B40B344F5__INCLUDED_)

⌨️ 快捷键说明

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