社区
界面
帖子详情
为什么基于对话框的应用程序的对话框不能响应WM_CHAR消息?
ygzdev
2003-10-24 08:11:45
我刚接触VC不久,对此不了解!不知道是什么原因,请问怎么才能响应该消息呢?谢谢!!
...全文
167
12
打赏
收藏
为什么基于对话框的应用程序的对话框不能响应WM_CHAR消息?
我刚接触VC不久,对此不了解!不知道是什么原因,请问怎么才能响应该消息呢?谢谢!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tserpent
2003-10-28
打赏
举报
回复
你可以这样处理回车键:
BOOL CXXXDialog::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_KEYDOWN)
{
switch(pMsg->wParam)
{
case VK_RETURN:
DoYourFunction()....;
return TRUE;
case VK_ESCAPE:
return TRUE;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
ygzdev
2003-10-27
打赏
举报
回复
编辑框加上want return属性我试过是不行的,但现在这个want return又是干什么用的呢,我就不解了!
carbon107
2003-10-27
打赏
举报
回复
编辑框的属性 加上want Return
ygzdev
2003-10-27
打赏
举报
回复
THANK YOU VERY VERY MUCH!
ygzdev
2003-10-26
打赏
举报
回复
编辑框架上want return属性是不行的,我早试过了。MilitaryMiatures(++)真是厉害,我派生出的类只响应WM_CHAR消息,结果还是不可以。这下试试WM_GETDLGC!谢谢了!
MilitaryMiniatures
2003-10-26
打赏
举报
回复
//sorry,shoule be WM_GETDLGCODE
LRESULT CYoutEdit::OnGetDlgCode(WPARAM wParam, LPARAM lParam)
{
return CEdit::OnGetDlgCode(wParam, lParam) | DLGC_WANTALLKEYS;
}
这么处理的结果是,你要自己处理Tab键,比较讨厌,可以看看DLGC_WANTCHARS这个行不行,估计不行。
MilitaryMiniatures
2003-10-24
打赏
举报
回复
回车一般被解释为对话框中的默认按钮。
编辑框架上want return属性,好像不一定行。
当需要这种情况时,我的做法一般是从CEdit派生一个类,其中响应WM_GETDLGC,并且返回一个数据表明需要所有的键盘输入,并且响应WM_CHAR消息,其中可以判断回车。
当然,对话框中的编辑框需要进行子类化。
huanyun
2003-10-24
打赏
举报
回复
编辑框的属性 加上want Return
ygzdev
2003-10-24
打赏
举报
回复
我的本意就是要在编辑框中回车后进行处理,但发现编辑框对其他字符都可以处理,但就是对回车不能处理。我试着重写OnOK函数,可惜发现有时的回车并不会响应他
MilitaryMiniatures
2003-10-24
打赏
举报
回复
一般说来,对话框是没有输入焦点的,(focus),输入焦点在其中的控件上,所以说,你的对话框响应不到消息WM_CHAR
huanyun
2003-10-24
打赏
举报
回复
如果你的界面中有一个有焦点的支持onChar消息 那么其他的窗口就得不到了
huanyun
2003-10-24
打赏
举报
回复
CEdit支持onChar
WM
_
CHAR
、
WM
_KEYDOWN和
WM
_SYSKEYDOWN
消息
本文详细解析了
WM
_KEYDOWN与
WM
_
CHAR
两种键盘
消息
的区别及应用场景,包括如何通过TranslateMessage函数转换
消息
,以及如何在WndProc函数中选择合适的键盘
消息
进行处理。此外,还介绍了PreProcessMessage方法中的
消息
处理流程。
对话框
响应
WM
_KEYDOWN
消息
本文介绍了如何在
对话框
程序中捕获
WM
_KEYDOWN
消息
,包括新建工程、重载虚拟函数、传递
对话框
句柄、过滤特定
消息
等步骤,并在
对话框
销毁时释放句柄,实现基于
对话框
的
应用程序
对
WM
_KEYDOWN
消息
的捕获。
对话框
无法捕捉
WM
_
CHAR
,
WM
_KEYDOWN,
WM
_KEYUP的解決方法
本文探讨了程序初始化时焦点转移导致视图或
对话框
响应
延迟的问题,并提供了使用PreTranslateMessage函数解决此问题的方法。重点在于理解
WM
_
CHAR
消息
处理及特殊键
响应
策略。
键盘
消息
WM
_KEYDOWN/
WM
_KEYUP、
WM
_SYSKEYDOWN/
WM
_SYSKEYUP与字符
消息
WM
_
CHAR
的区别
本文解析了Windows
消息
WM
_KEY*与
WM
_
CHAR
的区别,前者描述键盘虚拟键码,后者描述字符码。同时对比了
WM
_SYSKEY*与
WM
_KEY*
消息
的不同,前者涉及Alt键组合的功能。
界面
15,976
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章