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

avec Java Discussion :

Comment marche addMouseListener ?


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Par défaut Comment marche addMouseListener ?
    Bonjour,

    Voilà, je me met un peu au Java, et très vite commencent les problèmes...
    J'essaye de faire un 1er hello world - qui d'ailleur s'affiche bien - mais sur lequel je n'arrive pas a mettre d'event souris :

    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
    public class question {
    // code trouvé sur le net
        public void test()
        {
            Frame f = new Frame();       
            f.setLayout(new GridBagLayout());        
            Button b = new Button("quitter");
            Label l = new Label("Hello World");       
            f.add(b);
            f.add(l);      
            f.setSize(200,200);
            f.setVisible(true);
            b.addMouseListener(this);
            f.pack(); // rendre la fenetre la plus petite possible en affichant tous les elements
        }
     
    public void mouseClicked(MouseEvent e) {System.exit(0);}     
    public void mouseEntered(MouseEvent e) {}
    public void mouseExited(MouseEvent e) {}
    public void mousePressed(MouseEvent e) {}
    public void mouseReleased(MouseEvent e) {} 
    }
    Le b.addMouseListener(this); ne marche pas :

    addMouseListener(java.awt.event.MouseListener) in java.awt.Component cannot be applied to (questionnaire.question)
    Alors j'ai quand même essayé divers trucs, comme remplacer le this par b, esssayé sur le label, le mettre dans une fonction etc... Rien n'y fait, et j'ai toujours ce meme message d'erreur qui dit que cette méthode peut etre associé à rien...

    Donc plus qu'une solution, je cherche surtout une explication a ce problème...

    En vous remerciant par avance !

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    salut,

    il faut que ta classe implémente l'interface ActionListener

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    public MaClass implements ActionListener{
    }

  3. #3
    Membre émérite
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Par défaut
    Maintenant, j'ai 2 erreurs au lieu d'une... Décidement on va pas etre copain java et moi :p

    Que veut dire ce Implements ? Quel différence avec un extends ? Faut-il faire ça a chaque fois qu'on déclare une class ayant de quelque façon que ce soit une interface ?

    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
    public class question implements ActionListener {
     
        public void test()
        {
            Frame f = new Frame();       
            f.setLayout(new GridBagLayout());        
            Button b = new Button("quitter");
            Label l = new Label("Hello World");       
            f.add(b);
            f.add(l);      
            f.setSize(200,200);
            f.setVisible(true);
            b.addMouseListener(this);
            f.pack(); // rendre la fenetre la plus petite possible en affichant tous les elements
        }
     
        public void mouseClicked(MouseEvent e) {System.exit(0);}     
        public void mouseEntered(MouseEvent e) {}
        public void mouseExited(MouseEvent e) {}
        public void mousePressed(MouseEvent e) {}
        public void mouseReleased(MouseEvent e) {}   
    }
    C:\Documents and Settings\steph\Mes documents\NetBeansProjects\Questionnaire\src\questionnaire\question.java:15: questionnaire.question is not abstract and does not override abstract method actionPerformed(java.awt.event.ActionEvent) in java.awt.event.ActionListener
    public class question implements ActionListener {
    C:\Documents and Settings\steph\Mes documents\NetBeansProjects\Questionnaire\src\questionnaire\question.java:27: addMouseListener(java.awt.event.MouseListener) in java.awt.Component cannot be applied to (questionnaire.question)
    b.addMouseListener(this);
    Merci pour la réponse ^^

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Euh ouais désolé,

    en fait je me suis trompé.
    c'est MouseListener au lieu de ActionListener.

  5. #5
    Membre éprouvé
    Profil pro
    Devops
    Inscrit en
    Août 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Devops

    Informations forums :
    Inscription : Août 2006
    Messages : 107
    Par défaut
    Soit tu implémente (implement) une interface (qui ne contient aucun code) soit tu étends (extends) une classe (qui contient du code)

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

Discussions similaires

  1. comment marche fftw???
    Par aider une débutante dans le forum Bibliothèques
    Réponses: 3
    Dernier message: 11/11/2007, 10h33
  2. Comment marche les Skybox?
    Par wystan dans le forum OpenGL
    Réponses: 6
    Dernier message: 17/07/2006, 13h40
  3. Comment marche une ancre ?
    Par philippe du web dans le forum Balisage (X)HTML et validation W3C
    Réponses: 16
    Dernier message: 08/06/2006, 08h23
  4. Comment marche un union ?
    Par Fredri dans le forum Access
    Réponses: 4
    Dernier message: 10/01/2006, 17h46
  5. Comment marche GlutSwapBuffers() ?
    Par Sloughidog dans le forum OpenGL
    Réponses: 2
    Dernier message: 29/09/2002, 14h45

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