关于KeyDown, KeyPress, KeyUp事件的Key

gaomou 2003-10-15 06:37:52
我想在Ctrl+Enter被按下时处理某一操作,而不让控件知道Enter键曾被按下(对于TMemo, 只要它知道Enter键被按下,它就会换行)。
请问怎么在我处理完我的操作后去掉Enter键被按下这一事件,还有如何更改它,让控件以为我按了别的键?
(离线等待)
...全文
131 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaomou 2003-10-18
  • 打赏
  • 举报
回复
先谢过啦!
但是对于Ctrl+Enter,用Key=0还是不能阻止TMemo换行。
gaomou 2003-10-17
  • 打赏
  • 举报
回复
好像只能在KeyPress中修改。为什么呢?
gaomou 2003-10-17
  • 打赏
  • 举报
回复
但是我用过,TMemo还是会换行。
jjpan 2003-10-17
  • 打赏
  • 举报
回复
什么好象呀,一定要在KeyPress里做:
if (Key == 0){
Key = 0;
}
编译失败 2003-10-17
  • 打赏
  • 举报
回复
OnKeyDown事件觸發時鍵已經按下,所以Key=0失效
yjy1001 2003-10-16
  • 打赏
  • 举报
回复
同意 zihan(子寒)

抛除 一般用key=0;
zihan 2003-10-15
  • 打赏
  • 举报
回复
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if(Shift.Contains(ssCtrl)&&Key==13)
{
Key = 0;
然后做你要处理的东西
//或者key = x,就可以改变成你要换的键了.
}
}
我不懂电脑 2003-10-15
  • 打赏
  • 举报
回复
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if (Key == VK_RETURN) {
Key = 0;
}
}

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧