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

Windows Discussion :

Générer un clic sur un bouton


Sujet :

Windows

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 17
    Points : 13
    Points
    13
    Par défaut Générer un clic sur un bouton
    Bonjour,

    Voici le code de mon petit programme:

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    usingSystem; 
    using
    
    System.Collections.Generic; 
    using
    
    System.ComponentModel; 
    using
    
    System.Data; 
    using
    
    System.Drawing; 
    using
    
    System.Linq; 
    using
    
    System.Text; 
    using
    
    System.Windows.Forms; 
    using
    
    System.Diagnostics; 
    using
    
    System.Runtime.InteropServices; 
    using
    
    System.Threading; 
     
    
    namespace
    
    Simulateur 
    {
    
    
    publicpartialclassForm1: Form
    {
    
    
    [DllImport("user32.dll")] 
    
    privatestaticexternvoid mouse_event(long dwFlags, long dx, long dy, long cButtons, long dwExtraInfo); 
    [
    
    DllImport("user32.dll")] 
    
    staticexternbool SetCursorPos(int X, int Y); 
    
    public Form1() 
    {
    
    InitializeComponent();
    
    }
    
    
    publicenumMouseEventTFlags
    {
    
    LEFTDOWN = 0x00000002,
    
    LEFTUP = 0x00000004,
    
    MIDDLEDOWN = 0x00000020,
    
    MIDDLEUP = 0x00000040,
    
    MOVE = 0x00000001,
    
    ABSOLUTE = 0x00008000,
    
    RIGHTDOWN = 0x00000008,
    
    RIGHTUP = 0x00000010
    
    }
    
    
    privatevoid Form1_Load(object sender, EventArgs e) 
    {
    
    
    
    SetCursorPos(250, 250); 
    
    Thread.Sleep(100); 
    mouse_event((
    
    uint)MouseEventTFlags.LEFTDOWN, 0, 0, 0, 0); 
    
    Thread.Sleep(10); 
    mouse_event((
    
    uint)MouseEventTFlags.LEFTUP, 0, 0, 0, 0); 
    }
    
    
    
    [STAThread] 
    
    staticvoid Main() 
    {
    
    
    Application.EnableVisualStyles(); 
    
    Application.SetCompatibleTextRenderingDefault(false); 
    
    Application.Run(newForm1()); 
    }
    
    
    privatevoid button1_Click(object sender, EventArgs e) 
    {
    
    
    Debug.WriteLine("COME ON !!"); 
    }
    
    }
    
    }
    J'ai créé un bouton dans mon form et quand je clique manuellement deçu, j'ai bien le message "COME ON" qui s'affiche dans Visual Studio, par contre, le clic que je génére automatiquement dans mon main ne marche pas...
    Je n'ai pas de message "COME ON". J'ai juste la certitude que la souris se déplace en 250,250 et quel est bien au niveau du bouton...
    Comment se fait-il que mouse_event ne marche pas... je ne comprend pas...

    Merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    1-eh la touche espace ça existe sur un clavier d'ordinateur pour les déclarations de variables
    2-SetCursorPos c'est coordonnée écran; il faut les transformer au besoin en coordonnées fenêtre éventuellement
    3-si le bouton ne reçoit pas le click c'est parce que c'est le handle de fenêtre qui reçoit WM_LBUTTONDOWN et non le handle du bouton

Discussions similaires

  1. [STRUTS] plusieurs clic sur un bouton
    Par jehlg dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 27/03/2006, 15h02
  2. [VB.NET]Simuler un clic sur un bouton
    Par olbi dans le forum Windows Forms
    Réponses: 2
    Dernier message: 27/03/2006, 11h46
  3. Changer la feuille de style a l aide d un clic sur un bouton
    Par jean_bobi dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/11/2005, 08h35
  4. pb sur le premier clic sur un bouton
    Par corwin44 dans le forum Access
    Réponses: 6
    Dernier message: 28/10/2005, 09h51
  5. Gérer les clics sur les boutons
    Par cyberlewis dans le forum Windows
    Réponses: 4
    Dernier message: 08/02/2004, 15h34

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