单纯的鼠标移动事件的坐标问题,可以这样解决:<br>function kk(i:Tpoint):Tpoint;<br> begin<br> mapwindowpoints(form1.panel2.Handle ,form1.panel1.Handle,i,2);<br> result:=i;<br> end;<br>procedure TForm1.Panel2MouseMove(Sender: TObject; Shift: TShiftState; X,<br> Y: Integer);<br> var<br> i:Tpoint;<br>begin<br>i.x:=x;<br>i.y:=y;<br> i:=kk(i);<br>//clienttoscreen(i);<br>caption:=inttostr(i.x)+':'+inttostr(i.y);<br>end;<br>这样,当你在 Panel1上的Panel2上移动时,将得到此时鼠标相对于Panel1的坐标.<br>至于让某一个事件不触发,可以这样解决:<br>panel2.mousemove:=panel1.mousemove;<br>这样,panel2的mousemove实际执行的是panel1的mousemove事件.<br>其它事件类似。