首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

对话框响应回车键有关问题

2013-09-05 
对话框响应回车键问题我主对话框使用的tab control控件,运行起来的时候, 对几个选项卡下面的对话框里的edi

对话框响应回车键问题
我主对话框使用的tab control控件,运行起来的时候, 对几个选项卡下面的对话框里的edit输入数字 ,并想要通过回车键来发送出去。
现在的结果是,键盘上敲击回车键。当前的对话框就消失了。

百度过一些办法,无非是重载onok 和 截取键盘信息函数PreTranslateMessage。
我照着写了。调试发现,敲击回车键,根本没进入以上2个函数。
请高手指导 。
谢谢。

分不多。见谅。。。
[解决办法]
消息被tab control控件响应了,对话框没有收到。你重载tab control这个控件的PreTranslateMessage消息
[解决办法]

引用:
Quote: 引用:

消息被tab control控件响应了,对话框没有收到。你重载tab control这个控件的PreTranslateMessage消息


似乎是找到问题的节点了。可是怎么去重载这个呢?说白点就是PreTranslateMessage放在那里啊。
我确实不大会。纠结了好久。
您方便讲仔细点或者写两行代码吗?

加在你的编辑框所在的对话框类中即可。
[解决办法]
在主对话框里面重载OnOK函数、然后添加如下代码:
void CTest1Dlg::OnOK() 
{
GetNextDlgTabItem(GetFocus())->SetFocus();
}

你会惊奇的发现按下enter键后跳到下一个tab顺序的控件焦点上了
[解决办法]
消息被default button截获了,看看哪个是default button

热点排行