IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

[Windows] Simuler un clic de souris


Sujet :

Lazarus Pascal

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Août 2007
    Messages : 38
    Points : 31
    Points
    31
    Par défaut [Windows] Simuler un clic de souris
    Bonjour,

    J'essaie de réaliser une automatisation comprenant des clics de souris et un glisser/déposer. Sous WINDOWS.
    Pas de problème pour déplacer le curseur, par contre je n'arrive pas à trouver comment simuler clic gauche ou droit. Je cherche depuis un moment mais je ne trouve pas grand chose.
    Quelqu'un pourrait-il m'orienter ?

    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Bonjour !

    Je ne connais pas la réponse mais il me semble qu'il serait utile de préciser le système d'exploitation sur lequel porte votre question.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Août 2007
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Citation Envoyé par Roland Chastain Voir le message
    Bonjour !

    Je ne connais pas la réponse mais il me semble qu'il serait utile de préciser le système d'exploitation sur lequel porte votre question.
    Oui, désolé, j'ai rectifié mon message.

  4. #4
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    En tapant "freepascal lazarus simulate mouse click" dans Google, j'ai trouvé pas mal de choses mais difficile de dire si tel ou tel exemple correspond effectivement à votre problème. Cette page paraît assez complète.

    P.-S. J'ai testé cet exemple avec succès. Cependant je me demande quelle peut en être l'utilité (alors qu'on pourrait appeler directement la méthode Button2Click). Je me demande aussi ce que signifie cette histoire de "Mickeys".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    procedure TForm1.Button2Click(Sender: TObject);
    begin
      ShowMessage('Button2Click');
    end;
     
    // http://delphi.about.com/od/vclusing/a/mouseadvanced.htm
     
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Pt: TPoint;
    begin
      Application.ProcessMessages;
      {Get the point in the center of Button 2}
      Pt.x := Button2.Left + (Button2.Width div 2);
      Pt.y := Button2.Top + (Button2.Height div 2);
      {Convert Pt to screen coordinates and Mickeys}
      Pt := ClientToScreen(Pt);
      Pt.x := Round(Pt.x * (65535 / Screen.Width));
      Pt.y := Round(Pt.y * (65535 / Screen.Height));
      {Simulate the mouse move}
      Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_MOVE, Pt.x, Pt.y, 0, 0);
      {Simulate the left mouse button down}
      Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, Pt.x, Pt.y, 0, 0);
      {Simulate the left mouse button up}
      Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, Pt.x, Pt.y, 0, 0);
    end;
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Août 2007
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Mickeys.... Mickey mouse ? non, je sais pas.

    En fait j'ai trouvé un truc qui fonctionne. J'ai vu parler de "Mouseandkeyinput". Il y a bien ça dans \lazarus\components\mouseandkeyinput.
    A partir de l'exemple il semble qu'il faille ajouter "mouseandkeyinput" dans les uses. Après dans la procédure :
    MouseInput.Click(mbLeft, []); pour un clic gauche ou
    MouseInput.DblClick(mbLeft, []); pour un double clic par exemple.
    Il y a en plus pas mal de trucs à creuser. En tout cas ça fonctionne.

    Merci pour ton aide Roland

  6. #6
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Citation Envoyé par phobik Voir le message
    Merci pour ton aide Roland
    Pas de quoi.

    Je vais regarder moi aussi cet exemple.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

Discussions similaires

  1. Simuler un clic de souris
    Par ionah dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 04/06/2013, 23h14
  2. [Lazarus] [Linux] Simuler un clic de souris
    Par merovingien59 dans le forum Lazarus
    Réponses: 1
    Dernier message: 30/12/2011, 11h06
  3. [VB.NET 2003] Simuler un clic de souris
    Par Kropernic dans le forum Windows Forms
    Réponses: 9
    Dernier message: 30/10/2007, 18h47
  4. Simuler un clic de souris sur fenêtre réduite
    Par Costello dans le forum Delphi
    Réponses: 1
    Dernier message: 31/03/2007, 00h25
  5. Simuler un clic de souris
    Par kabikou dans le forum Access
    Réponses: 1
    Dernier message: 28/09/2005, 13h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo