Simuler un click n'importe où sur l'écran



Pour simuler un click n'importe où sur l'écran, il suffit de bouger le curseur à l'aide de SetCursorPos, puis d'envoyer un évennement souris "Bouton gauche enfoncé" (MOUSEEVENTF_LEFTDOWN) suivi d'un évennement sourcis "Bouton gauche relevé" (MOUSEEVENTF_LEFTUP). En effet, un click est composé d'un appui puis d'un relachement du bouton de la souris. Pour que l'utilisateur ait l'impression que le curseur soit resté sur place, il suffit, avant de simuler le click, de sauvegarder la position du curseur à l'aide de GetCursorPos, et de le remettre en position à l'aide de SetCursorPos après traitement. Par exemple, le code ci-dessous déclenche l'ouverture du Menu Système de la fiche courante :

Simuler un click n'importe où sur l'écran


procedure TForm1.Button1Click(Sender: TObject);
var
  P: TPoint;
begin
  GetCursorPos(P); //On sauvegarde la position du curseur
  SetCursorPos(Left + 10, Top + 10); // On place le curseur à l'endroit souhaité
  Mouse_Event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); // On simule l'appui sur le bouton
  Mouse_Event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); // On simule le relâchement du bouton
  SetCursorPos(P.X, P.Y); // On remet le curseur à sa position d'origine
end;



3 requête(s) SQL executée(s) en 0.001 Secs - Temps total de génération de la page : 0.007 Secs