适时捕捉F1键,大家一起来探讨!看谁的点子very good!! 现在碰到一个帮助提示问题,是在一个窗口中如何对象上只要按下F1键,就可以启动帮助文件来,请哥们姐们发表一下你们的思路、点子!先谢谢!在线等待! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我给你一个源代码,这是定义的系统热键,不管是否在你的窗口上,都可以使用。unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private id: Integer; procedure WMHotKey(var Msg : TWMHotKey); message WM_HOTKEY; { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation const RSP_SIMPLE_SERVICE=1; function RegisterServiceProcess (dwProcessID, dwType: DWord) : DWord; stdcall; external 'KERNEL32.DLL';{$R *.dfm}procedure TForm1.WMHotKey (var Msg : TWMHotKey);begin if msg.HotKey = id then showmessage('你按下热键');end;procedure TForm1.FormCreate(Sender: TObject);Const {ALT、CTRL和F1键的虚拟键值} MOD_ALT = 1; MOD_CONTROL = 2; VK_F1 = 112;begin if GlobalFindAtom('MyHotkey') = 0 then begin id:=GlobalAddAtom('MyHotkey'); RegisterHotKey(handle,id,0,VK_F1);//如果是ALT+F1则为:RegisterHotKey(handle,id,MOD_ALT,VK_F1);如果是Ctrl+Alt+F1则为:RegisterHotKey(handle,id,MOD_CONTROL+MOD_ALT,VK_F1); end else showmessage('热键冲突!');end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);begin UnRegisterHotKey(handle,id); GlobalDeleteAtom(id);end;end. 如何调整TQRChart的Axis的title和label之间的距离? Help:VC代码 转 Delphi! 一个程序查询 怎么去掉cxGrid上面的分组的灰色栏,太不好看了??? 散分 打开的ADO连接和ADO记录集,操作完用不用关闭?? 有关IDHTTP的问题,多谢大家帮忙(在线等候) 请问如何使EDIT控件中的文本居中显示? 一个很简单的问题,可是似乎被淹没了! 我想做一个想输入法那样的窗口,怎么实现鼠标拖动那 ListView的简单问题,还望指教! 寻找一个将txt或word文档转换成图片格式文件的控件
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
id: Integer;
procedure WMHotKey(var Msg : TWMHotKey); message WM_HOTKEY;
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation const RSP_SIMPLE_SERVICE=1;
function RegisterServiceProcess (dwProcessID, dwType: DWord) : DWord; stdcall; external 'KERNEL32.DLL';{$R *.dfm}procedure TForm1.WMHotKey (var Msg : TWMHotKey);
begin
if msg.HotKey = id then
showmessage('你按下热键');
end;
procedure TForm1.FormCreate(Sender: TObject);
Const
{ALT、CTRL和F1键的虚拟键值}
MOD_ALT = 1;
MOD_CONTROL = 2;
VK_F1 = 112;
begin
if GlobalFindAtom('MyHotkey') = 0 then
begin
id:=GlobalAddAtom('MyHotkey');
RegisterHotKey(handle,id,0,VK_F1);//如果是ALT+F1则为:RegisterHotKey(handle,id,MOD_ALT,VK_F1);如果是Ctrl+Alt+F1则为:RegisterHotKey(handle,id,MOD_CONTROL+MOD_ALT,VK_F1);
end
else
showmessage('热键冲突!');
end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnRegisterHotKey(handle,id);
GlobalDeleteAtom(id);
end;end.