利用HOOK建立鼠标增强程序(DELPHI)(2)

2018-12-27 17:47

end;

function EnableMouseHook(WndHandle:integer):BOOL;external 'MHook.DLL'; function DisableMouseHook:BOOL;external'MHook.DLL'; var

Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.WMBarIcon (varMessage:TMessage); begin

file://用户双击任务栏图标则关闭程序

if Message.LParam = WM_LBUTTONDBLCLK then close; end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); var

lpData:PNotifyIconData; begin

file://删除任务栏图标

lpData := new(PNotifyIconDataA);

lpData.cbSize := 88;//SizeOf(PNotifyIconDataA); lpData.Wnd := Form1.Handle;

lpData.hIcon := Form1.Icon.Handle;

lpData.uCallbackMessage := WM_ICONMESSAGE; lpData.uID :=0;

lpData.szTip := '鼠标演示';

lpData.uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP; Shell_NotifyIcon(NIM_DELETE,lpData); dispose(lpData);

file://解除Mouse hook DisableMouseHook; end;

procedure TForm1.FormCreate(Sender: TObject); var

lpData:PNotifyIconData; begin

EnableMouseHook(Form1.Handle);

Form1.Visible := False;

lpData := new(PNotifyIconDataA);

lpData.cbSize := 88;//SizeOf(PNotifyIconDataA); lpData.Wnd := Form1.Handle;

lpData.hIcon := Form1.Icon.Handle;

lpData.uCallbackMessage := WM_ICONMESSAGE; lpData.uID :=0;

lpData.szTip := '鼠标演示';

lpData.uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP; Shell_NotifyIcon(NIM_ADD,lpData); dispose(lpData); end;

end.

运行程序,按下Scroll Lock键使其有效,将光标移动到文本窗口中(如IE、Word),

移动鼠标,点击鼠标右键,窗口就可以依上一次移动的方向滚动。

利用上面的原理,将程序做一些改动,就可以象专业的鼠标增强程序一样做出例如缩放

窗口,运行程序等很多鼠标增强效果来。

上面的程序在Windows95,Delphi4.0下运行通过。


利用HOOK建立鼠标增强程序(DELPHI)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:龙泉山 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: