CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

很简单的问题难住我了,如何为编辑控件添加KeyDown事件处理函数?

楼主dingchao(dingchao)2000-12-05 20:39:00 在 VC/MFC / 基础类 提问

我在窗体上添加了一个编辑控件EDIT1,程序运行后编辑控件获得焦点,如何为编辑控件添加KeyDown事件处理函数呢?类向导里面好象不能,我新建了一个MYEDIT类,但MYEDIT里面却没有EDIT1控件,我应怎么办? 问题点数:50、回复次数:4Top

1 楼sun2000(非常可乐)回复于 2000-12-05 20:46:00 得分 20

你可以在其Parent的PreTranslateMessage(MSG*   pMsg)中判断  
  pMsg->hwnd   ==   edit.GetSafeHwnd()  
  pMsg->message   ==   WM_KEYDOWN并进行你想要的处理就可以了Top

2 楼sxbyl(sxbyl)回复于 2000-12-05 20:58:00 得分 10

你在用ClassWizard给编辑框控件设关联类时可以设为CMyEditTop

3 楼dingchao(dingchao)回复于 2000-12-05 22:48:00 得分 0

TO   SUN2000:edit.GetSafeHwnd()中的edit是一个新建的类还是控件名?Top

4 楼squiffy(歪歪)回复于 2000-12-06 00:17:00 得分 20

首先你必须使用wizard建立一个你自己的类:CMyEdit,从CEdit继承。这样你可以在CMyEdit类中处理KEYDOWN消息了。  
  如果这个EDIT是使用在对话框中,必须重载:YourApp::PreTranslateMessage(MSG*   pMsg)  
  {  
        if(pMsg->hwnd   ==   你的对话框的窗口指针   &&   pMsg.message   ==   WM_KEYDOWN){  
              SendMsg(你的控件的窗口指针,pMsg.message,pMsg.wParam,pMsg.lParam);  
  }  
  Top

相关问题

  • 谁有这样的函数或控件?
  • CTreeCtrl控件的SetBKColor函数问题?
  • .net 的函数、类型、控件.....
  • 如何使用控件的Create函数
  • VC.net关于MediaPlayer控件的EndOfStream函数
  • 关于ListCtrl控件的GetHotItem()函数!!
  • 函数中使用Form的控件
  • 函数调用控件的问题
  • ActiveForm控件添加函数接口
  • 控件的响应函数中,如何调用另外一个控件?

关键词

  • 控件
  • pmsg
  • keydown
  • 添加
  • 类
  • 编辑
  • edit
  • message

得分解答快速导航

  • 帖主:dingchao
  • sun2000
  • sxbyl
  • squiffy

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo