如题
解决方案 »
- 改名后找不到dcu文件
- 在模态对话框中创建多个自身,怎么处理?请高手多多指教.......
- 使用delphi开发小型数据库系统(保证结贴给分)
- 零售管理系统中零售店和总店的通讯应该采取哪种方式好些?
- 为什么我的exe文件在没装delphi的机子上用不得
- Socket上接收到的数据用一线程来处理,下面的方法错在哪里?急!
- 请帮我看一下这个指向记录数组的指针用法是否正确
- 進行過濾操作時出錯,請指點.
- 如何对DBEdit增加的重复判断
- delphi挂接access的问题
- 各位大哥,如何做到程序每一步操作都可以被监控,我想用来写程序日志功能。如能解决,定高分相送。
- 请给出发邮件到163的代码和解释,谢谢
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
procedure FormCreate(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
procedure HotKeyPressed(var Msg:TMessage); message WM_HOTKEY;
public
{ Public declarations }
end;var
Form1: TForm1;implementationvar
HotKeyID: Word;{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
HotKeyID := GlobalAddAtom(PChar(Application.Title + 'TAB'));
if RegisterHotKey(Handle, HotKeyID, 0, VK_TAB ) = False then
ShowMessage('注册热键TAB失败!');end;procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
UnregisterHotKey(Handle, HotKeyID);
DeleteAtom(HotKeyID);
end;procedure TForm1.HotKeyPressed(var Msg: TMessage);
var
M: tagMsg;
begin
case Msg.LParamHi of
VK_TAB: { TAB }
begin
ShowMessage('Tab pressed on ' + ActiveControl.Name);
end;
end;
end;end.
to :DDGG(叮叮当当)
你那样是可以捕获窗体的
我要的是窗体上所有的EDIT的按下TAB键的事件
谢谢
然后将窗体的keypreview 属性设为true
你可以试试运行我上面的那段代码,能够识别TAB键来自哪个控件的。TO: sally612
OnKeyPress事件不能捕捉TAB键。
你的代码可以
谢谢 等等结帐不过我想能不能只捕获
Edit的
begin
....
end;