主题:求助: delphi是怎么接收按键并做出相应的反映
liuhengheng
[专家分:0] 发布于 2006-07-27 16:07:00
我在使用DELPHI 7 编个小东西 ,想用F1等功能键做快捷键 不知道 怎么做 恳请各位大侠帮忙 急
回复列表 (共6个回复)
沙发
wealthy [专家分:1840] 发布于 2006-07-27 18:12:00
如果你只在TMainMenu中使用快捷键的话,就每个菜单按键设定它的shorcut为F1等,
如果要在无论什么情况下按F1等快捷键都动作的话,就用到捕捉键盘按键方法,大部分的组件都有KeyDown功能,如
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
这里写捕捉键盘按键代码
end;
板凳
liuhengheng [专家分:0] 发布于 2006-07-28 08:53:00
谢谢2楼 你在帮一下忙 里面代码写一下 ,简单完整就行
3 楼
wealthy [专家分:1840] 发布于 2006-07-28 10:15:00
"如果你只在TMainMenu中使用快捷键的话,就每个菜单按键设定它的shorcut为F1等"----这种方法不可吗?简单又快.
第二种方法很烦琐的,看窗口有几多控件,每个控件的KeyDown都要写代码哦
4 楼
liuhengheng [专家分:0] 发布于 2006-07-28 10:31:00
呵呵 其实我就想用 第2种方法做 , 弄了很长时间 还没有弄好 特郁闷 所以想请帮帮忙写一个最简单 但完整的 小程序 ,实现 按F2则执行BUTTON1。CLOCK事件
谢谢
5 楼
wealthy [专家分:1840] 发布于 2006-07-28 11:27:00
procedure TForm1.Button1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=113 then
这里编写你的Button1Click事件的代码
end;
6 楼
liuhengheng [专家分:0] 发布于 2006-07-28 13:28:00
谢谢 我利用你写的 已经调试成功,虽然没有达到我设想的 ,但毕竟走出了一小步
呵呵 我的QQ号是316200780 想跟你交个朋友
我来回复