如何解决对话框的回车键自动关闭,让edit框接收回车换行。

回车键自动关闭,究其原因:
默认的ok键和cancel键是默认的button。当你回车就会触发他们,然后程序就退出了。
当然你可以试试重写这两个虚函数。我的解决办法比较暴力,如有需要,请尽情参考。
注意:编辑框最好设置为多行显示,并且有竖直滚动条,当然设置为可接收return。
拦截的消息是WM_KEYDOWN笔者就手误弄成了NM_KEYDOWN 调试了半天。。。。
1 重写对话框的PreTranslateMessage函数。
里面加上:

// TODO: 在此添加专用代码和/或调用基类
	if (pMsg->message == WM_KEYDOWN&& pMsg->wParam == VK_ESCAPE)
	{
		int retVal = MessageBoxA(m_hWnd, "Do you Want to Quit App ?", "Tips", MB_OKCANCEL);
		if (retVal == IDOK)
		{
			exit(0);
		}
		return TRUE;
	}


	if (pMsg->message == WM_KEYDOWN&& pMsg->wParam == VK_RETURN)
	{
		m_hwndEdit.PostMessage(WM_CHAR, pMsg->wParam, pMsg->lParam);
		return TRUE;
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值