MFC對話框程序屏蔽ESC和ENTER鍵退出,完美解決方案

關於MFC CDialog對ESC和ENTER免疫的問題,有很多網友問,也有很多網友答,其中的道道很多網友都有解釋,我就不囉嗦了

直接貼代碼吧,我在很多工程裏都用的,讓遇到這個問題的朋友少走點彎路,不過其中的細節原由最好還是自己想明白

template<class TBase>
class TDlgBanEscEnter : public TBase
{
protected:
	TDlgBanEscEnter()
	{
	}

	template<class T1>
	TDlgBanEscEnter(T1 p1) : TBase(p1)
	{
	}

	template<class T1, class T2>
	TDlgBanEscEnter(T1 p1, T2 p2) : TBase(p1, p2)
	{
	}

protected:
	virtual void OnOK()			{}
	virtual void OnCancel()		{}

	DECLARE_MESSAGE_MAP()
	afx_msg void OnClose()
	{  
		EndDialog(IDCANCEL);  
		TBase::OnClose();  
	}
};


BEGIN_TEMPLATE_MESSAGE_MAP(TDlgBanEscEnter, TBase, TBase)
	ON_WM_CLOSE()
END_MESSAGE_MAP()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章