keyup事件无法触发

treewith 2012-04-05 04:56:51
大家好:cbc使用中遇到疑难杂症。

在sample中的控件TSpinEdit中输入文本,当keydown keypress keyup三个函数全部存在,且分别在三个函数中都写了
ShowMessage("down") "up" "press".

在按下ctrl键只显示 up, 按下数字字符键 只显示press down。

然后我在三个函数中都设断点,按下字符键调试,程序运行只进入 press 和 down

随后我删除了keydown函数,断点调试,能够正常进入up。这个太奇怪了。

每次按键,我认为这三个函数应该都触发的啊?顺序是
KeyDown → KeyPress → KeyChange → KeyUp

...全文
403 点赞 收藏 5
写回复
5 条回复
treewith 2012年04月07日
我查了资料,确实是如你所说oldtab,但是实际调试程序的时候,keyup就是不触发啊,
真是愁死人了,是不是我c++builder的安装有问题啊?
回复 点赞
我不懂电脑 2012年04月06日
edit控件都会触发很正常。手头没BCB不能测试TSpinEdit
回复 点赞
oldtab 2012年04月06日
只有可显示字符、\r、汉字,才触发Keypress的。控制符等,是不会触发的。
一般的,Keydown、keyup,是会先后触发。不会只触发keydown
回复 点赞
treewith 2012年04月06日
这个问题确实很奇怪的,难道大家使用的时候,每次按键三个函数都会触发吗?
请知道的朋友指点一下,我再多加个20分。有多少给多少了。
回复 点赞
treewith 2012年04月06日
songhtao

本人换成edit控件,keydown keypress keyup 也没有都触发
回复 点赞
发动态
发帖子
VCL组件使用和开发
创建于2007-08-02

438

社区成员

1.3w+

社区内容

C++ Builder VCL组件使用和开发
社区公告
暂无公告