Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->编程语言 ->Delphi ->正文

实现界面跟随鼠标移动的实例

来源:Linuxdby.com 作者:Webmaster 时间:2007-06-05 点击: [收藏] [投稿]
 

unit Unit_Mouse;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Menus;

 {=======================================================
  DESIGN BY :  花好月圆 / 玉面书生
  DATE:        2005-01-30
  SITE:        http://www.eastrise.cn/quick2004
  BLOG:        http://blog.csdn.net/jackie168
  EMAIL:       joe-lu@163.com

  文章为作者原创,转载前请先与本人联系,转载请注明文章出处、保留作者信息,谢谢支持!
=======================================================}

type
  TForm1 = class(TForm)
    PopupMenu1: TPopupMenu;
    N1: TMenuItem;
     procedure N1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
   i:integer;  //全局变量
implementation

{$R *.dfm}
//自写函数
function proc(icode:integer;wparam:wparam;lparam:lparam):lresult;stdcall;
var
evtmsg:teventmsg;
begin
    evtmsg:=peventmsg(lparam)^;
    Form1.Left:=mouse.CursorPos.X+10;
    form1.Top:=mouse.CursorPos.Y+10;
    if evtmsg.message=WM_RBUTTONUP then
    Form1.N1.Click;
end;

procedure TForm1.N1Click(Sender: TObject);
begin
    N1.Checked:= not N1.Checked;
    if N1.Checked then
    i:=setwindowshookex(WH_JOURNALRECORD,proc,hinstance,0)
    else
    unhookwindowshookex(i);
    Top:=(screen.Height-Height)div 2;
    Left:=(screen.Width - width-55) div 2;
end;

end.



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:lua头文件翻译之lauxlib   下一篇:防止全局hook入侵Delphi版,2000以上系统适用(part1)

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号