回 帖 发 新 帖 刷新版面

主题:如何在c++builder6中,用回车键替代tab键

如何在c++builder6中,用回车键替代tab键,从而实现在不同的Edit控件之实现跳转功能,

意思是只要按回车就可以把光标跳到下一个控件上>?

网上有好多的的功能,可是都是无法实现的,
比如:
if(Key==VK_RETURN)
{
   SendMessage(this->Handle,WM_NEXTDLGCTL,0,0);
   Key=0;
}
都是无法实现的,请大家帮一下忙,
是在哪个事件里,又是如何实现的,请大家帮我一下

回复列表 (共5个回复)

沙发

if(Key==VK_RETURN)
{
  控件名.SetFocus();
}

板凳

if(Key==VK_RETURN)
{
   SendMessage(this->Handle,WM_NEXTDLGCTL,0,0);
   Key=0;
}
这个是像指定控件发送windows消息响应的,当然不是移动光标了~~~
如果在指定控件上设置,在keypress事件上添加
if(13==Key)
{
控件名->SetFocus();
}
如果想完全代替,就自己写一个宏代替吧......

3 楼


看看这个详细的解释和代码:

http://www.3322ee.com/thread-4591-1-1.html

非常的完整

4 楼

2楼正解

5 楼

SendMessage(this->Handle,WM_NEXTDLGCTL,0,0);
这段代码不就是把焦点移到下一个控件么
不就相当于Tab键么
楼上所说的只是指定某个特定的控件,而不是
按tab键后会取得焦点的控件(注意这句话)
放到KeyPress事件里就好了

我来回复

您尚未登录,请登录后再回复。点此登录或注册