如何获取在所有控件上的键盘信息

ygchu70 2005-12-27 02:08:49
一个窗口有很多控件,如何实现无论在哪个控件上键入的键盘信息都可以获得到阿,请帮忙
...全文
75 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hellolongbin 2005-12-28
  • 打赏
  • 举报
回复
上面的方法可以捕获到回车啊

你在窗体上放几个edit和memo,然后Form1的KeyPreview设成true,在form的keypress事件里写

if key=#13 then ShowMessage('ok');
你会发现无论在哪个控件里敲回车都会show出message


keypress事件里面只要不是功能键比如ctrl alt F1之类都可以捕获,如果要捕获功能键用keydown事件
ygchu70 2005-12-27
  • 打赏
  • 举报
回复
呵呵,当输入焦点在别的控件时就不好使阿,我想的效果是无论现在的输入焦点在哪个控件上,比如按回车时我都可以获取到,您说的方法仅仅是我在没有其他控件是在选中的状态下好使
hellolongbin 2005-12-27
  • 打赏
  • 举报
回复
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.KeyPreview:=true;
end;

procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
Form1.Caption:=key
end;

多放几个控件,试试吧
hellolongbin 2005-12-27
  • 打赏
  • 举报
回复
Form1.KeyPreview:=true

828

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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