to kevin_gao(困了!累了!睡觉了!): click事件是不能获得鼠标坐标的,用MOUSEDOWN就OKLA; to bitpapa: 我给了代码,自己看,要灵活一点的话就定义一个Trect; procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if (x<50) and (y<50) then image1.Cursor:=crhandpoint else image1.Cursor:=crdefault;end;procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if (x<50) and (y<50) then showmessage('i love u') else showmessage('i dont love u'); end;
1stCalss的DEMO中就有这样的例子——关于地图热区的。
click事件是不能获得鼠标坐标的,用MOUSEDOWN就OKLA;
to bitpapa:
我给了代码,自己看,要灵活一点的话就定义一个Trect;
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if (x<50) and (y<50) then
image1.Cursor:=crhandpoint
else
image1.Cursor:=crdefault;end;procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if (x<50) and (y<50) then
showmessage('i love u')
else
showmessage('i dont love u');
end;
or
PtInRect