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

AWT/Swing Java Discussion :

GRos problemme avec MouseListener


Sujet :

AWT/Swing Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2007
    Messages : 22
    Points : 13
    Points
    13
    Par défaut GRos problemme avec MouseListener
    Bonjour, voilà mon problême, je veux faire un programme, quant on clic sur mon JFrame n'importe où , çà écris dans la console " La souris a cliquer , 103, 129 " mais le problême est dans ma premier méthode, je n'arrive pas à mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     implements MouseListener
    voici l'erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     javaapplication.Mafenetre is not abstract and does not override abstract method mouseExited(java.awt.event.Mouseevent) in java.awt.event.MouseListener
    Merci bcp de votre aide!
    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
     
    class Mafenetre extends JFrame implements MouseListener{ // ERREUR du à MouseListener
    public Mafenetre() { // constructeur
    setTitle("Teste d'interface graphique");
    setVisible(true);
    setSize(400,200);
    addMouseListener(this);
     
    }
    public void MouseClicked(MouseEvent ev){
    int x = getX();
    int y = getY();
     
    System.out.println("Vous avez cliquer sur la coordonnée de :" + x +" pixel de longeur, " + y + " pixel de hauteur.");
    }
    public void MouseExited(MouseEvent ev){}
    public void MouseReleased(MouseEvent ev){}
    public void MousePressed(MouseEvent ev){}
    public void MouseEntered(MouseEvent ev){}
    }
    public class Main {
     
    /** Creates a new instance of Main */
    public Main() {
    }
     
    /**
    * @param args the command line arguments
    */
    public static void main(String[] args) {
    // TODO code application logic here
    JFrame monInterface = new Mafenetre();
    }
     
    }

  2. #2
    Membre actif

    Étudiant
    Inscrit en
    Mai 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 200
    Points : 276
    Points
    276
    Par défaut
    Bonjour,

    L'erreur de compilation signifie que tu ne surcharges pas la méthode mouseExited de l'interface MouseListener alors que tu devrais car ta classe n'est pas abstraite.

    En regardant, le code de plus près tu te rendras compte que c'est vrai. En effet, l'interface MouseListener contient une méthode mouseExited et non MouseExited (de même pour les autres méthodes de l'interface). Attention à la casse !!!

    De plus, en java la norme veut que les méthodes commencent par une minuscule.

    Pour finir n'oublie pas les balises code.

  3. #3
    Membre actif Avatar de jibbi
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 165
    Points : 205
    Points
    205
    Par défaut
    Salut

    Dabord, pense à utiliser la balise code.

    Si tu lis attentivement les 5 méthodes de MouseListener, ils commencent tous par un m minuscle et non un M:

    public void MouseExited(MouseEvent ev){} != public void mouseExited(MouseEvent ev){}

    Seul les classes commence par une Majuscule, c'est la norme.

    l'autre solution est d'utiliser la Classe MouseAdapter qui implémente MouseLitener.

    Voici un exemple avec une classe dite anonyme:

    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
     
    class Mafenetre extends JFrame{
    public Mafenetre() { // constructeur
    setTitle("Teste d'interface graphique");
    setVisible(true);
    setSize(400,200);
    addMouseListener(new MouseAdapter(){
    public void mouseClicked(MouseEvent ev){
    int x = getX();
    int y = getY();
     
    System.out.println("Vous avez cliquer sur la coordonnée de :" + x +" pixel de longeur, " + y + " pixel de hauteur.");
    }
    });
    }
    De cette facon, ce n'est pas nécessaire d'implémenté les autres méthodes. Il y a d'autre facon faire, ca dépend du problème.

  4. #4
    Membre actif Avatar de jibbi
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 165
    Points : 205
    Points
    205
    Par défaut
    wow floflo, on a eu un bon timing
    et on a vu les mêmes choses...

  5. #5
    Membre actif

    Étudiant
    Inscrit en
    Mai 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 200
    Points : 276
    Points
    276
    Par défaut
    et ouè on a tout di pareil

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2007
    Messages : 22
    Points : 13
    Points
    13
    Par défaut
    merci bcp lol,depuis que j'ai commencé le Java, j'ai toujours oublié la miniscule au méthode et les majuscule aux classes.
    Merci bcp.

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

Discussions similaires

  1. Gros projet avec Dev-C++
    Par Emmanuel Delahaye dans le forum Dev-C++
    Réponses: 3
    Dernier message: 25/04/2005, 23h49
  2. Gros problème avec la facturation de Tiscali
    Par Harry dans le forum Dépannage et Assistance
    Réponses: 5
    Dernier message: 21/10/2004, 18h55
  3. Gros soucis avec pgaccess et postgresql
    Par Missvan dans le forum PostgreSQL
    Réponses: 9
    Dernier message: 13/04/2004, 16h16
  4. Gros Problème avec DirectShow et la méthode RELEASE
    Par Olivier Delmotte dans le forum DirectX
    Réponses: 3
    Dernier message: 10/03/2003, 18h10
  5. Gros problème avec JB8 et appli J2EE
    Par patbier dans le forum JBuilder
    Réponses: 10
    Dernier message: 07/03/2003, 10h52

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