113E博章

       登录 /注册
首页 一算子网 发布
分类 :c++/vc

如何在VC+中用回车键切换输入焦点

[ 2008-7-30 22:46:00 | 发表者 : zihe ]



windows程序中tab键是默认的切换输入焦点的按键,但用回车键切换输入焦点更符合人们的输入习惯。delphi、vb中这个问题比较容易解决,vc++中却很少有资料提到。通过反复尝试,我找到了一种方法,或许对大家有所帮助。
1.vc++中appwizard生成一个基于对话框的程序。切换resourseview状态,在对话框中插入一个编辑框,同时修改其styles属性,选中multiline 、want return两项。
2. ①在classwizard中选add class增加一个新类,name定义为myedit,base class选择edit。其余采用默认选项。
②在新生成的my-edit类中加入wm-keydown的消息映射函数,加入如下代码。
oid myedit::onkeydown(uint nchar, uint nrepcnt, uint nflags)
{
// todo: add your message handler code here and/or call default
if (nchar= = vk_return) //插入开始部分
{
cdialog* pwnd=(cdialog*)getparent() ;//取得对话框指针
pwnd->nextdlgctrl( ); //切换到下一个输入焦点
}
//插入结束部分
ceditview::onkeydown(nchar, nrepcnt, nflags);
}
3.在classwizard中选择 member variables 选项,class name选择对话框类,control ids中选择编辑框的id号,然后选择add variable按扭。在对话框中 categary选择control, variable type 刚才定义的类myedit。
至此,全部工作结束,编译运行程序,定位到编辑框中输入回车键,看一看效果如何。



上一篇:VC中如何捕获和释放鼠标   
下一篇:Visual C+编程控制输入法

浏览模式 : 显示全部 | 评论 : 0 | 排序 | 浏览 : 2523

我要发表文章
回复标题:  
    Email :
* 请输入验证码
 
统计数据
文章数量 : 300300
评论次数 : 460
访问次数 : 19304267
在线人数 : 2120

附近文章
  • 用...
  • “...
  • c...
  • C...
  • V...
  • V...
  • V...
  • C...
  • 用...
  • V...
热门文章
  • 如...
  • Socket编程中select()的妙...
  • 如何在DLL中创建窗体(对话...
  • 重载赋值运算符 C+/VC
  • 展现TRACE之威力 C+/VC
  • ·用豪杰大眼睛制作照片v...
  • 一個簡單的錄音放音程序 ...
  • 用Socket接口实现网络异步...
  • MFC动态创建控件的消息处...
  • 实现服务器端的多线程SOC...
最新文章
  • 09/北京代办国内外文凭Q...
  • 09/北京代办国内外文凭Q...
  • 09/北京代办国内外文凭Q...
  • 股票技术不准了
  • 2009年元旦放假安排
最近评论
  • xueshanfh
  • 匿名
  • 匿名
  • 匿名
  • 匿名
  • 匿名Martha Jack
  • 匿名
  • Tom Moddy
  • 匿名Jimmy Adams
  • 匿名
 
 

Copyright (C) 一算子网 2006-2008, All Rights Reserved 京ICP备06020154号
服务QQ: 有问题请留言 留言邮箱pinhu530@sohu.com