• 全部
  • VC综合技术
  • 互联网技术
  • MFC AppLauncher
  • .NET 技术
  • 界面
  • 进程
  • 算法
  • 硬件/系统
  • 数据库
  • VC++技术资源

CComboBox 输入框的键盘事件如何截取

z_j 2001-07-15 08:25:42
通常要截获CEdit的键盘事件,只需要再 OnKeyDown 中写代码即可,但是对于 CComboBox 中的 WM_KEYDOWN 是处理列表框中的按键操作,而不是输入框中的按键操作,那么请问如何截获输入框中的按键操作
...全文
137 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wmouse 2001-11-08
……
回复
WadeHan 2001-11-08
up
回复
Julienjut 2001-10-08
azuo_lee():
兄弟真是高手也,困扰我一天的问题,兄弟一语中的!
我也纳闷,为什么CComboBox子类化后就不能收到WM_CHAR 、WM_COPY 和WM_PASTE消息呢?
而CEIDT 是可以的。原来它封装了一个EDIT子窗口!
回复
不解 2001-07-15
同意azuo_lee()的见解!
回复
111222 2001-07-15
//DIC_IP是你的CComboBox
//xxxx.h declare your function
afx_msg void OnChangeIp();



//xxxx.cpp
BEGIN_MESSAGE_MAP......
//{{AFX_MSG_MAP(CScanDlg)

ON_EN_CHANGE(IDC_IP, OnChangeIp)

//}}AFX_MSG_MAP
END_MESSAGE_MAP()

void xxxx::OnChangeIp()
{
AfxMessageBox("ComBoBox Inputed changing");
}
回复
azuo_lee 2001-07-15
如果只是为了监视组合框的Edit内容的变化,那用CBN_EDITUPDATE或CBN_EDITCHANGE消息(实际是WM_COMMAND形式的Notify消息)即可,如果Edit内容变化,ComboBox的父窗口会收到这样的通知消息;
如果是为了全面监视Edit的键盘行为,可以先用GetWindow(hwndCombo, GW_CHILD)取到ComboBox的Edit窗口句柄(hwndCombo是ComboBox的句柄),然后对其子类化,接管全部的键盘消息。
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2001-07-15 08:25
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……