如何不用钩子判断回车键是否被按下呢~? 如题,钩子需要用DLL,觉得麻烦,不想程序带个DLL。。如何全局判断回车是否被按下呢?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private { Private declarations } procedure MyMsg(var Msg: TMsg; var Handled: Boolean); public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}{ TForm1 }procedure TForm1.FormCreate(Sender: TObject);begin Application.OnMessage := MyMsg;end;procedure TForm1.MyMsg(var Msg: TMsg; var Handled: Boolean);begin if Msg.message = WM_KEYDOWN then begin if Msg.WParam = VK_RETURN then ShowMessage('你按下了回车键'); end;end;end. if GetAsyncKeyState(13)=-32767 then 按下[Enter]GetAsyncKeyState,用这个函数写出来的东西会会经常被安全软件报病毒的。 看你的需求。如果你想在任何时候都能捕捉到,你必须用钩子或者ring0级别的汇编指令。那就比较复杂了。如果只是在程序内部使用做个控件之类的,你完全可以通过键盘消息来判断。 祭奠中国足球2008 如果让控件的事件调用自己编写的过程或者函数? Delphi中如何编写类似SYGATE的网关服务软件??? access数据库怎么改变用户名和密码? 关于listbox的问题 加急!! 高分求pb7.0运行库!!!!!!!!!!!!! 动态数组的问题,请进! fastreport 段落 请教关于加密数据库datasource整体全加密的方法 Delphi怎么调试程序? 求助:如何监控应用程序启动,并将标题显示出来? 请教 webservices 问题
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
procedure MyMsg(var Msg: TMsg; var Handled: Boolean); public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}{ TForm1 }procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMessage := MyMsg;
end;procedure TForm1.MyMsg(var Msg: TMsg; var Handled: Boolean);
begin
if Msg.message = WM_KEYDOWN then
begin
if Msg.WParam = VK_RETURN then
ShowMessage('你按下了回车键');
end;
end;end.
按下[Enter]GetAsyncKeyState,用这个函数写出来的东西会会经常被安全软件报病毒的。