牛骨文教育服务平台(让学习变的简单)
博文笔记

【MFC-11】VS2010/MFC基于对话框程序之修改Enter/ESC按键默认响应

创建时间:2016-02-26 投稿人: 浏览次数:1267


1、VS2010;

2、C++ / MFC;



1、新建基于MFC对话框的工程项目;


2、重载虚函数:PreTranslateMessage;


3、修改函数内容如下:

// TODO: 在此添加专用代码和/或调用基类
if(pMsg->message == WM_KEYDOWN)
{
	switch(pMsg->wParam)
	{
	case VK_RETURN:	// Enter键
		PressEnterKeyFunction();
		return TRUE;
		break;
	case VK_ESCAPE:	// Esc键
		PressEscKeyFunction();
		return TRUE;
		break;
	case VK_SPACE:	// Space键
		PressSpaceKeyFunction();
		return TRUE;
		break;
	}
}

return CDialogEx::PreTranslateMessage(pMsg);

其中:

1)PressEnterKeyFunction:按下Enter键是消息响应函数,自定义;

2)PressEscKeyFunction:按下Esc键是消息响应函数,自定义;

3)PressSpaceKeyFunction:按下Space键是消息响应函数,自定义;


备注:重载虚函数PreTranslateMessage后,默认按键消息取消。如默认情况下按“Enter”/“Esc”键是程序退出。



声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。