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 :

Il y a déjà un héritage, il m'en faudrait un 2ème :-(


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 64
    Par défaut Il y a déjà un héritage, il m'en faudrait un 2ème :-(
    Bonjour,
    J'utilise une class Accueil pour mon interface.
    Pour redefinir mes bouton (même longueur, couleur,...) je me suis créé un class MyButton.
    Puis j'ai fait hérité Accueil de myButton.

    A présent j'aimerai aussi redefinir mes JLabel (pour notamment un fond blanc).
    Mais comme Accueil hérite déjà de MyButton, il m'est impossible de le faire.
    Y'a t'il un truc permettant de contourner mon problème ?
    Merci d'avance de votre aide.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 64
    Par défaut
    Il y a par exemple les interfaces qui me semblent fort utile dans mon cas.
    Mais impossible de faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    interface MyButton extends JButton { ... }

  3. #3
    Membre Expert
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Par défaut
    Bonjour,

    Mon avis est que tu n'as pas bien compris la programmation orientée objet.

    Si tu hérites de la classe JButton, c'est pour définir un bouton personnalisé (qui par exemple aurait toujours le texte en majuscule, ou qui aurait toujours la même icone, ou qui serait rond, ...).

    Pour afficher plusieurs bouton dans un JPanel ou une JFrame, il faut les avoir en attributs, et non en classe mère. Comme ça, tu peux avoir plusieurs boutons, plusieurs labels, etc.
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

  4. #4
    Membre émérite Avatar de yann2
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 897
    Par défaut
    Salut,

    Je suis d'accord avec Xavlours. Je complète par ceci :

    Ta classe Accueil est ton interface.
    Pose toi les questions suivantes :
    - est ce que un accueil est un bouton ?
    - est ce que un accueil est un étiquette ?
    et enfin :
    - est ce que une étiquette est un bouton ?

    Si tu as répondu non à toutes ces question c'est que la classe Accueil ne doit pas hériter de MyButton et MyLabel...

  5. #5
    Membre éclairé
    Avatar de JMLLB
    Inscrit en
    Septembre 2006
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 285
    Par défaut Héritage multiple
    Pour info, l'héritage multiple n'est pas authorisé en Java.
    Même si cela fait partie de la grande théorie Objet, peu de langages Objet le propose.
    Par contre tu peux avoir autant d'interfaces que tu veux, mais il est vrai que tu ne peux pas te servir d'interfaces pour mettre du code en commun.
    Si tu utilises des objects spécifique pour le code que tu veux réutiliser,
    un peu à la façon de bibliothèque, ça marche plutot bien et l'un dans l'autre je ne trouve pas que la "limitation" d'hériatge soit vraiment génante.

    En tout état de cause bon courage, car ça n'a pas l'air très clair ton truc.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 64
    Par défaut
    Merci, mais je sais que le fait de faire hérité ma class MyButton dans ma classe Accueil est loin d'être une solution pour les raisons que vous avez décrites.
    C'est justement tout l'intéret de ma question ...
    je n'ai pas l'intention de laisser ca comme ca mais j'ai juste vérifier que ca fonctionnait. Le problème des interfaces est visiblement semblable.
    Les placer en attributs n'est pas vraiment non plus pratique lorsqu'on a 40 boutons.
    Je ne veux pas 'AFFICHER' des boutons (qui sont déjà là), mais leurs donner un style commun. Avec setSize(), setBackground(),...
    Merci d'avance de votre aide

  7. #7
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 44
    Par défaut
    Bonjour,
    personnelement j'ai du mal à comprendre ce que tu veux faire.

    Si tous les boutons de Accueil doivent avoir le même style ... pourquoi ne pas faire tout simplement une méthode private void setStyleButton(JButton aButton), dans laquelle tu appliques le style à un boutton, et à chaque fois que tu instancie un nouveau bouton, tu passes par cette méthode....

    Dans le même principe pour les JLabel.

    Mais je suis pas sur que c'est cela que tu souhaites, puisque visiblement, le fait d'avoir fait hériter Accueil, de myButton te convenais avant d'avoir le soucis pour les JLabel, j'ai francement du mal à cerner ce que tu veux

    Peut etre quand eclairsissant ce que tu veux ...

Discussions similaires

  1. [Postgresql]Héritage
    Par lheureuxaurelie dans le forum PostgreSQL
    Réponses: 13
    Dernier message: 02/10/2008, 09h18
  2. [Héritage] Vos commentaires....
    Par Fyna dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 03/05/2005, 22h10
  3. [XML Schemas]héritage multiple
    Par nicolas_jf dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 10/06/2003, 12h55
  4. [Postgres] Héritage + Clés
    Par k-reen dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 21/05/2003, 16h37
  5. Héritage entre Forms
    Par BarBal dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 17h44

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