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

NetBeans Java Discussion :

extends JButton methode inaccessible


Sujet :

NetBeans Java

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

    Informations forums :
    Inscription : Septembre 2007
    Messages : 34
    Points : 19
    Points
    19
    Par défaut extends JButton methode inaccessible
    Débutant en java (et netbeans), j'ai crée un bouton avec le designer, customisé le code d'init: jButton1= new MyJButton(...)
    ou j'y met mes images par défaut dans le constructeur...pas de soucis...

    Par contre, j'ai crée une methode (public void ChangeImage()) dans MyJButton pour changer une des images,
    La compilation se passe bien pour la classe mais impossible d'appeler cette méthode dans ma frame principale: jButton1.ChangeImage(...)
    le compilo met: cannot find symbol method ChangeImage()...

    quelqu'un peut-il me dire pourquoi ? (au niveau objet je vois pas le probleme)

    Merci d'avance...

  2. #2
    Membre expérimenté

    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2009
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2009
    Messages : 553
    Points : 1 672
    Points
    1 672
    Par défaut
    Comme tu as utilisé Netbeans, il y a de fortes chances que jButton1 soit de type JButton, et non pas de type MyJButton. Or, la méthode ChangeImage n'existe pas pour la classe JButton...
    En passant, par convention on laisse la première lettre en miniscule pour les noms de méthode.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 34
    Points : 19
    Points
    19
    Par défaut
    (d'abord merci pour le rappel de convention)

    Pour le JButton, NetBeans en effet, declare automatiquement par defaut:
    jButton1=new JButton();

    Mais NetBeans permet de customiser le code automatique, et là j'ai changé en:
    jButton1=new MyJButton(image1,image2...) //pour les images par defaut.
    ce qui affiche tres bien mes images, donc jButton1 pointe bien vers une instance de la classe MyJButton non ?

    Une autre idée ? ou alors mon jButton1 n'est vraiment pas instance de ma classe, mais je comprendrais pas car le constructeur s'est bien executé....

    Help !!

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 34
    Points : 19
    Points
    19
    Par défaut
    J'ai trouvé un alternative en castant mon jButton1 sur ma classe:
    ((MyJButton)jButton1).myMethod();

    Ca marche, mais ca me dit pas pourquoi Netbeans ne reconnait pas la bonne classe pour l'objet jButton1...

  5. #5
    Membre expérimenté

    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2009
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2009
    Messages : 553
    Points : 1 672
    Points
    1 672
    Par défaut
    Parce que, comme je l'ai dit dans mon précédent post, Netbeans a déclaré ta variable en JButton... Je parle bien du type, pas du constructeur...!

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

    Informations forums :
    Inscription : Septembre 2007
    Messages : 34
    Points : 19
    Points
    19
    Par défaut
    Mais c'est bien sur ! Désolé de ne pas avoir plus fait attention à ton post...

    Meme si mon cast marche, derniere question:
    Ou peux t-on changer cette déclaration automatique dans netbeans (pour etre plus propre)? (tout en utilisant le designer qui simplifie enormement la vie)

    Pour l'instant je cherche mais trouve pas...
    Je vois bien dans les proprietés de jButton1 que le "Bean Class" est à JButton, mais impossible de changer ca...

    Merci encore

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 34
    Points : 19
    Points
    19
    Par défaut
    Ps: je vois aussi sa déclaration dans le source:
    private javax.swing.JButton jButton1;

    Mais impossible à changer directement dans le source (avec netbeans)

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 34
    Points : 19
    Points
    19
    Par défaut
    Bon en fait je reposerai plus tard cette question...
    Grand merci en tous cas...

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

Discussions similaires

  1. Classe extends JButton impossible d'instancier correctement
    Par Ducdevolpe dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 02/05/2014, 22h04
  2. Appel d'une methode inaccessible
    Par clouddd dans le forum Débuter
    Réponses: 2
    Dernier message: 21/02/2013, 16h48
  3. Methodes TQuery inaccessible
    Par juliano77 dans le forum Débuter
    Réponses: 10
    Dernier message: 08/01/2008, 17h50
  4. [AIDE] Methode de ma fonction inaccessible
    Par Nixeus dans le forum MFC
    Réponses: 3
    Dernier message: 19/04/2007, 16h55
  5. Héritage JButton et methode setEnabled
    Par ceres02 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 21/05/2006, 18h53

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