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 :

Changer un composant à la volée.


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Changer un composant à la volée.
    Bonjour,

    En fonction d'un test je dois changer un composant.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    JtextField tailleTf = new JtextField();
    JCombobox tailleCb = new JComboBox(new TaillesModel());
    ...
    
    if ( monTestEstCorrect ) {
        // remplace tailleTf par tailleCb
    } else {
        // remplace tailleCb par tailleTf
    }
    je pourrais :

    - Mettre en attribut les règles du layout
    - récupèrer le container et y supprimer mon composant
    - récupèrer le conatiner et y ajouter le nouveau avec les régles du layout
    - faire un repaint() sur mon container()
    --> Mais ça ne me semble pas trés efficace


    - Créer les deux composants
    - Placer les deux composants l'un sur l'autre
    - Modifier l'attribut visible de ces composants
    --> Je n'aime pas vraiment l'idée de créer dexu composants pour n'en montrer qu'un. Ca risque de poser quelques problèmes vis à vis du Layout aussi.


    Quelqu'un à un autre idée ?


    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bon, si personne n'a d'autres idées, il y à bien l'un ou l'autre pour me conseiller une des deux approches..

    S'il vous plait ..

  3. #3
    Membre chevronné Avatar de spekal
    Inscrit en
    Mai 2005
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 502
    Par défaut
    En ce cas à mon avis La Bonne Habitude À Suivre est de placer les deux composants dans un JPanel dont le layout est un CardLayout. Comme ça plus de besoin de finasser avec les repaint et les setVisible c'est la machinerie java qui s'occupe de tout.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par spekal
    c'est la machinerie java qui s'occupe de tout.
    Qui s'occupe de remplacer mon composant m se trouvant en 10,20 par un composant n ?

    Faudrais que l'on m'explique ça.

  5. #5
    Membre éclairé
    Avatar de seiryujay
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    950
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 950
    Par défaut
    C'est comme du JTabbedPane, sauf que c'est juste un layout.
    Voici le tuto Sun.

  6. #6
    Membre chevronné Avatar de spekal
    Inscrit en
    Mai 2005
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 502
    Par défaut
    Mais tu as lu le javadoc de CardLayout ? (ou alors c'est moi qui ait pas compris ta question ) Un autre lien, si tu veux : How to Use CardLayout. Et puis une recherche sur CardLayout dans le forum renvoie pas mal de résultats, il doit bien y en avoir un qui te guide ?

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 44
    Par défaut
    Normalement avec le couple de méthodes removeAll() - revalidate() sur ton container ça marche nickel.

Discussions similaires

  1. zend + changer de view à la volée
    Par Reckonings dans le forum Zend Framework
    Réponses: 6
    Dernier message: 13/06/2012, 10h10
  2. [B.NET][ADO.NET] Créer des composants à la volée
    Par DotNET74 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 27/12/2007, 15h31
  3. Réponses: 4
    Dernier message: 15/10/2007, 16h33
  4. [C#] impossible de changer de rapport à la volée
    Par Cazaux-Moutou-Philippe dans le forum Windows Forms
    Réponses: 3
    Dernier message: 23/05/2006, 16h13
  5. [BorderLayout] Changer le composant
    Par calypso dans le forum Agents de placement/Fenêtres
    Réponses: 6
    Dernier message: 12/04/2005, 11h58

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