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

Interfaces Graphiques en Java Discussion :

Agir sur un bouton sans clic


Sujet :

Interfaces Graphiques en Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 127
    Points : 73
    Points
    73
    Par défaut Agir sur un bouton sans clic
    Voila ce que je veux faire (c'est un peu tordu, je l'accorde) :
    je souhaiterais agir sur un bouton sans avoir a cliquer dessus, un peu a la manière du bouton "output" ou "usages" de Netbeans (ouverture d'une fenetre en positionnant la souris au dessus du bouton).

    Je veux donc que lorsqu'on laisser la souris plus de 1seconde au dessus du bouton l'action se déclenche ... (probable utilisation d'un Thread)

    Suis-je assez clair ???

  2. #2
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Bonjour,

    Utilise un MouseListener et redéfinit les méthodes mouseEntered et mouseExited

    @+

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 127
    Points : 73
    Points
    73
    Par défaut
    C'est la bonne solution. Voici mon code :
    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
    public void mouseEntered    (MouseEvent e) {
            thread = new Thread();
            thread.start();         // lancement du thread
            JButton[] jbButtonPinpad = view.getPinpadButtons();
            for(int i=0; i<jbButtonPinpad.length; i++) {
                if(thread.isAlive() && jbButtonPinpad[i].hasFocus()) {
                    jbButtonPinpad[i].doClick();
                }
            }
        }
        public void mouseExited     (MouseEvent e) {
            thread.interrupt();     // arret du thread
        }
     
        // Thread utilisé pour la temporisation de 1 seconde
        public void run() {
            try {
                thread.sleep(1000);
            } catch (InterruptedException e) {
                logger.error("Thread interrompu",e);
            }
            thread.interrupt();
        }
    Le truc, c'est que j'utilise un tableau de JButton. Comment savoir que la souris est placée au dessus de tel ou tel bouton ???

    La commande hasFocus() n'a pas l'air appropriée

  4. #4
    Membre expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Points : 3 083
    Points
    3 083
    Par défaut
    Si le listener est sur chacun de tes boutons, tu n'as plus qu'à faire :
    e.getSource() pour récupérer le bouton sur lequel la souris vient de se positionner.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 127
    Points : 73
    Points
    73
    Par défaut
    pas la peine de demander pourquoi, mais j'avais enlevé le focus des boutons !!!
    maintenant ça marche bien

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

Discussions similaires

  1. Agir sur un bouton InternetExplorer dans VBA
    Par ady495 dans le forum Général VBA
    Réponses: 0
    Dernier message: 11/07/2013, 09h26
  2. [Débutant] Cliquer sur un Bouton sans ID ni Name
    Par Juaaah dans le forum VB.NET
    Réponses: 3
    Dernier message: 05/05/2013, 22h27
  3. Réponses: 4
    Dernier message: 01/02/2010, 09h50
  4. Retour sur le Edit sans clic
    Par midou84 dans le forum Débuter
    Réponses: 2
    Dernier message: 11/02/2008, 06h49
  5. [FLASH 8] Agir sur un bouton
    Par choussamaster dans le forum Flash
    Réponses: 3
    Dernier message: 07/12/2006, 09h18

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