用F1-F8做快捷键(50分)

  • 主题发起人 主题发起人 dongliu
  • 开始时间 开始时间
D

dongliu

Unregistered / Unconfirmed
GUEST, unregistred user!
我想用F1-F8做快捷键,来切换窗口,可行吗?怎摸做呢。
F1-F8在DELPHI里的键值是多少呢?
 
F1-F8所对应的键值定义在Windows单元中,
你可以直接使用vk_F1 -vk_F8
 
你可以下载一个快捷键控件,你可以用www.Goolgle.com网站去搜索
 
下一个lmd控件包
在lmd sys页里头有个LMDGlobalHotKey1组件, 用它就行了
 
快捷键也要用控件吗?
如果这样做的话,
还是不要编程了。
如果最小化窗口后还能通过快捷键激活的话,
可以用HOKEY消息,
通过RegisterHotkey。
如果只有程序聚焦的时候才能用快捷键的话,
用一个ActionList就行。
 
好像设一个属性就完了吧,没这 么复杂吧。
 
I used the ''case key of
; ; ; ; ; ; ;vk_f1:.......
; ; ; ; ; ; ;vk_f2:....
but there is a er:'' 'char' and 'integer'
 
改为
; ; ; ; ; case ord(key) of
; ; ; ; ; ; ;vk_f1:.......
; ; ; ; ; ; ;vk_f2:....
; ; ;
 
在 onkeydown中写
 
切换窗口是什么意思???看来是仅仅是自己的程序里用喽。
那得定义系统热键。
 
>buder 你好,
我试了你的办法,没有错,但F1键不起作用,怎么回事呢,谢谢
 
不知道你到底想怎样。
将窗体的KeyPreview设置为true;
KeyPreview := true;

在keyDown事件中,不要使用keyPress事件。
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
; Shift: TShiftState);
begin
case key of
; ; ; ; ; ; ;vk_f1:showmessage('f1');
; ; ; ; ; ; ;vk_f2:showmessage('f2');
; ; ; ; ; ; ;//...
; ; ; ; ; ; ;end;
end;
 
多人接受答案了。
 
后退
顶部