用timer控件和鼠标移动事件;(具体参数自己找,这里只是个例子)
鼠标事件
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if (x>10) and (y>10) then//在此添加鼠标从右面出去的情况(x<form1.width-10) and (y<form1.height-10)
begin
timer1.Enabled:=false;
form1.Top:=0;
end
else
timer1.Enabled:=true;
end;
timer事件(间隔最佳时间为100)
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if form1.Top>-100 then
form1.Top:=form1.Top-10
else
timer1.Enabled:=false;
end;