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

Composants Java Discussion :

associer un ecouteur au bouton


Sujet :

Composants Java

  1. #1
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 21
    Par défaut associer un ecouteur au bouton
    bonjour tous,

    je veux associer un écouteur à un bouton mais il marche pas je vous explique

    quand je clic sur le bouton j'aurais seulement un JScrollPane mais pas l'image que j'ai ajouter au JScrollPane

    voila le code class Boutton

    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
    36
    37
    38
    39
    40
    41
    42
     
     
     
    import java.awt.event.*;
    import java.util.*;
    import java.util.Vector.*;
    import javax.swing.*;
    import java.awt.*;
    import java.io.File;
     
    class Boutton extends JFrame 
    {
    	JScrollPane dd;
    	JButton salut;
    	private Container contenu;
    	public Boutton()
    	{
     
    		super();
    		setTitle("tester la gestion des fenétres");
    		setSize(500,500);
    		 Container contenu = getContentPane();
    		contenu.setLayout(null);
     
    	salut = new JButton("bonjour!!!!!");
    	salut.setBounds(20, 100, 80, 30);
    	salut.addActionListener(new EcoutBotton(this,contenu));
    	contenu.add(salut);
     
    }
     
    public static void main (String args[])
    {
    	   Boutton fen=new Boutton();
           fen.setVisible(true);
     
     
    }
     
     
     
    	}

    /*****************code de EcoutBotton***************/

    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
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.border.*;
     
    class EcoutBotton implements ActionListener
    {
    	JButton invite;
    	Container contenu;
    	JScrollPane dd;
    	Boutton ve;
     
    	public EcoutBotton(Boutton ve,Container contenu)
    	{ 
    		this.contenu =contenu;
    		this.ve = ve;
    	}
     
    	public void actionPerformed(ActionEvent e)
    	{ 		
    		ImageIcon ii = new ImageIcon("images.jpg");
    		dd = new JScrollPane(new JLabel(ii));
    		dd.setBounds(300,200,150,200);
    		contenu.add(dd);
    		contenu.repaint();
    }
     
    }



    je vous remercie d'avance.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 179
    Par défaut
    Citation Envoyé par vedoca Voir le message
    je veux associer un écouteur à un bouton mais il marche pas je vous explique
    quand je clic sur le bouton j'aurais seulement un JScrollPane mais pas l'image que j'ai ajouter au JScrollPane
    Si tu vois le scrollpane, c'est que le listener fonctionne parfaitement.
    Seulement le code à l'intérieur ne fait pas ce que tu veux.

    Déjà es-tu certain que ton ImageIcon n'est pas null ?
    Ensuite vérifie la taille du label, que retourne getPreferredSize() ?
    Tu peux tenter un revalidate() sur le scrollpane.

    Je ne pense pas que mettre à null le layout du contentPane de la frame soit une bonne idée, ça peut être une source de problème potentielle. Si tu dois vraiment utiliser le positionnement absolu (ce qui ne semble pas justifié dans ton cas), crée ton propre panel que tu ajoutes au contentPane.

    PS: on dit: bouton ou button
    Mais boutton et botton ça fait vraiment bizarre !

    Fred

  3. #3
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 21
    Par défaut
    merci pour votre réponse
    mais j'ai déjà mis le code de JScrollPane qui permet d'afficher l'image,dans une autre frame et elle s'affiche correctement je sais pas pourquoi la class ecouteur associe au bouton ne marche pas?
    peut être que vous pouvez détecter l'erreur,je vous remercie

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 179
    Par défaut
    Citation Envoyé par vedoca Voir le message
    mais j'ai déjà mis le code de JScrollPane qui permet d'afficher l'image,dans une autre frame et elle s'affiche correctement je sais pas pourquoi la class ecouteur associe au bouton ne marche pas?
    Tu as tenté le revalidate() sur le scrollpane ?

    Fred

  5. #5
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 21
    Par défaut
    enfin l'image s'affiche mais après le clic je doit agrandir ma fenêtre pour que l'image apparaitre pouvez vous m'expliquer pourquoi ? et que doit je faire pour que l'image s'affiche au clic ?
    merci

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 179
    Par défaut
    Citation Envoyé par vedoca Voir le message
    et que doit je faire pour que l'image s'affiche au clic ?
    Ben, c'est un peu à ça que devait servir le revalidate().
    Du coup, là, je vois pas...

    Fred

  7. #7
    Membre averti
    Inscrit en
    Décembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Décembre 2003
    Messages : 65
    Par défaut
    et si tu fais un revalidate() et un repaint() (suggestion sans grande certitude)

    mobi

  8. #8
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 21
    Par défaut
    que proposée vous que je fasse
    j'ai vraiment pas compris d'où vient le problème
    merci pour vos réponse

  9. #9
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 21
    Par défaut
    merci beaucoup pour vos réponse(fred et mobi) enfin c'est régler il suffit juste de remplacer la méthode repaint() par la méthode revalidate()

    mais je vois pas pourquoi et c'est quoi la déférence entre les deux c'est vous pouvez me répond je serai reconnaissant

    merci d'être passion avec mois fred

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

Discussions similaires

  1. Associer une requete à un bouton
    Par piogo113 dans le forum WinDev
    Réponses: 23
    Dernier message: 14/11/2007, 14h12
  2. [HTML] associer une image à un bouton
    Par info_plus dans le forum Balisage (X)HTML et validation W3C
    Réponses: 15
    Dernier message: 19/07/2007, 15h59
  3. associer un lien à un bouton
    Par info_plus dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/07/2007, 17h43
  4. [VBA Excel] Associer N macros à N boutons suite à un événement
    Par Vorillyan dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 24/11/2006, 09h46
  5. associer un son à un bouton
    Par Mucsy dans le forum MFC
    Réponses: 7
    Dernier message: 19/12/2005, 23h17

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