Subscribe

RSS Feed (xml)

Powered By

Skin Design:
Free Blogger Skins

Powered by Blogger

星期二, 10月 02, 2007

跟隨著滑鼠的視窗(可以變游標、圖片或動畫)

新增1個TPopmenu並點兩下加入一個N1,並在N1上點兩下加入事件。
Form1的PopupMenu屬性要加入上面的物件,FormStye屬性設為fsStayOnTop。

unit Unit1;

interface

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

type
TForm1 = class(TForm)
PopupMenu2: 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.

沒有留言: