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

Qt Discussion :

Générer un clic de souris sur le bureau


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 211
    Par défaut Générer un clic de souris sur le bureau
    Bonjour,

    J'aimerai créer un programme qui est capable de bouger la souris et générer un clique de souris.
    J'arrive à bouger le souris utilisant QCursor:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    QCursor test;
    test.setPos(test.pos().x()+10,test.pos().y()+40);
    QPoint pos = test.pos();
    Mais je n'arrive pas à générer le click de souris.
    Pouvez vous m'aider ?

    ++
    Dereck

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 211
    Par défaut
    J'ai trouvé la réponse:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // simulation d'un double clic gauche
    mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); // Appuie bouton gauche
    Sleep(0.2);        // Pour pas aller trop vite ^^
    mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); // Relache bouton gauche
    Sleep(0.2);
    mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); // Appuie bouton gauche
    Sleep(0.2);        // Pour pas aller trop vite ^^
    mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); // Relache bouton gauche
    Sleep(0.2);
    J'avais peur que le click soit généré qu'au niveau de ma fenêtre mais non ca marche bien sur le bureau aussi

  3. #3
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 129
    Billets dans le blog
    149
    Par défaut
    Dommage que dans une application Qt, vous ajoutez un #include <windows.h>. Si c'est pour le Sleep, il existe une fonction équivalente dans Qt, multiplateforme -> https://doc.qt.io/qt-5/qthread.html#sleep.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Détecter clic de souris sur une autre application
    Par xenos dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 05/08/2010, 09h18
  2. Réponses: 1
    Dernier message: 14/08/2008, 22h43
  3. détection de clic de souris sur un objet pixmap
    Par bouchecousue dans le forum Qt
    Réponses: 16
    Dernier message: 15/05/2008, 13h09
  4. Générer des clics de souris
    Par jaquetanto dans le forum C#
    Réponses: 12
    Dernier message: 05/05/2008, 23h13
  5. 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

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