怎么给鼠标发消一个按下左键的消息啊。就是当鼠标停留在某个控件上一会儿后时,自动执行:mousedown事件啊。

解决方案 »

  1.   

    var
      OldX, OldY : integer;procedure TForm1.Timer1Timer(Sender: TObject);
    var
      H : HWND;
    begin
      if (Mouse.CursorPos.X = OldX) and (Mouse.CursorPos.Y = OldY) then
        begin
        H := WindowFromPoint(Mouse.CursorPos);
        if H<>0 then
          begin
          SendMessage(H, WM_LButtonDown, 0, 0);
          SendMessage(H, WM_LButtonUp, 0, 0);
          end;
        end
      else
        begin
        OldX := Mouse.CursorPos.X;
        OldY := Mouse.CursorPos.Y;
        end;
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
      Timer1.Interval := 1000; //停留此时间后发消息
      Timer1.Enabled := True;
      OldX := Mouse.CursorPos.X;
      OldY := Mouse.CursorPos.Y;
    end;