金山词霸设置里系统的热键是怎么做的啊?(200分)

  • 主题发起人 主题发起人 wenming
  • 开始时间 开始时间
W

wenming

Unregistered / Unconfirmed
GUEST, unregistred user!
在金山词霸里的系统设置里有一个热键项,是属于全局热键的,请问如何做到那种组合型的热键,然后保存起来啊?
最好有实际例子。谢谢!
 
RegisterHotKey
 
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
hotkeyid :integer;
procedure WMhotkeyhandle(var msg:Tmessage);
message wm_hotkey;

end;

var
Form1: TForm1;

implementation

{$R *.DFM}
procedure TForm1.Wmhotkeyhandle
(var msg:Tmessage);
begin
if (msg.LParamHi=$41) and
(msg.lparamLo=MOD_CONTROL or mod_Alt) then
begin
msg.Result:=1;
application.BringToFront;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
hotkeyid:=GlobalAddAtom(pchar('UserDefineHotKey'))-$C000;
registerhotkey(handle,hotkeyid,MOD_CONTROL or mod_Alt,$41);

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
unregisterhotkey(handle,hotkeyid);
DeleteAtom(HotKeyID);
end;

end.
 
<Delphi 下深入windows核心编程>中的例子 没有问题 测试过
 
我用hook做了。registerhotkey不太管用。

不过谢谢大家的帮忙了!xiaoyue_a的实例不知道如何应用。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
680
import
I
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部