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

Agents de placement/Fenêtres Java Discussion :

Effacer le contenu d'un JPanel?


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 34
    Par défaut Effacer le contenu d'un JPanel?
    Bonjour, quand je fais un clique sur mon bouton affiche, j'ai un dessin qui apparait, et j'ai envi quand je fais un nouveau clique, que ce dessin disparait et que le nouveau dessin apparait. Je connais pas la commande utilise pour le JPanel pour le "reinitialiser".
    Pouvez vous m'aider?
    Je vous remercie d'avance.
    diditin

  2. #2
    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,

    Dans toutes les classes héritant de Container, il y a les méthodes add pour ajouter un composant, et remove pour l'enlever.

    Plus simple d'utilisation, il y a removeAll() qui vide le conteneur.
    "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.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 75
    Par défaut
    tu devrais peut être essailler la méthode repaint() sur le composant graphique qui doit être redessiner.

  4. #4
    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
    Tout à fait ! En fait ça dépend de la manière dont tu affiches le dessin : dans un JLabel avec un ImageIcon, ou dans la méthode paintComponent ?
    "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.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 34
    Par défaut rep
    au faite je le fais apparaitre dans un JPanel.alors que dois -je essayer?
    1. removeAll() 2. repaint() 3.remove()?
    Car dans mon code, quand je clique sur le bouton affiche, je teste pas dans ma fonction actionPerformed, si le ActionEvent est bien celle provenant du bouton affiche, car j'ai un soucis avec la commande getSource() ou getActionCommand?

    Que pouvez vous me proposer comme solution?

    Je vous remercie d'avance,
    diditin

  6. #6
    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
    Citation Envoyé par diditin
    au faite je le fais apparaitre dans un JPanel
    Pour faire apparaître une image dans un JPanel, il y a plusieurs méthodes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    JPanel monJPanel = new JPanel();
    monJPanel.add(new JLabel(new ImageIcon("monImage.jpg")));
     
    // Pour changer d'image :
    monJPanel.removeAll();
    monJPanel.add(new JLabel(new ImageIcon("monAutreImage.jpg")));
    ou bien :
    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
    public class MonJPanel extends JPanel {
     
      Image image;
     
      public void setImage(String filename) {
        this.image = ImageIO.read(new URL("monImage.jpg"));
        repaint();
      }
     
      public void paintComponent(Graphics g) {
        if(image != null)
          g.drawImage(0, 0, getWidth(), getHeight(), null);
      }
    }
     
    MonJPanel panel = new MonJPanel();
    panel.setImage("monImage.jpg");
     
    // Pour changer d'image
    panel.setImage("monAutreImage.jpg");
    "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.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 34
    Par défaut resolu
    ben au faite, j'ai pas voulu effacer les figures que j'ai crée, j'ai fais une fonction qui produit des points aleatoirs,et a chaque fois quand je les affiche, il se cré à partir des points differents. Merci....
    diditin

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 34
    Par défaut resolu
    ben au faite, j'ai pas voulu effacer les figures que j'ai crée, j'ai fais une fonction qui produit des points aleatoires,et a chaque fois quand je les affiche, il se cré à partir des points differents. Merci....
    diditin

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

Discussions similaires

  1. Effacer le contenu d une zone de liste
    Par nico5151 dans le forum IHM
    Réponses: 23
    Dernier message: 22/06/2005, 15h50
  2. Effacer le contenu d'un fichier texte...
    Par loupdeau dans le forum MFC
    Réponses: 2
    Dernier message: 09/05/2005, 15h28
  3. comment effacer le contenu d'une table ttable
    Par naw dans le forum Bases de données
    Réponses: 4
    Dernier message: 07/07/2004, 16h13
  4. Comment effacer le contenu d'une scrollbox???
    Par Leclair2000 dans le forum C++Builder
    Réponses: 2
    Dernier message: 01/07/2004, 16h34
  5. Effacer le contenu d'un fichier a partir d'une ligne
    Par localhost dans le forum Linux
    Réponses: 3
    Dernier message: 04/04/2004, 04h47

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