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

Interfaces Graphiques en Java Discussion :

afficher un TextField dans un jPanel apres un clic


Sujet :

Interfaces Graphiques en Java

  1. #1
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut afficher un TextField dans un jPanel apres un clic
    Bonjour,

    Je désire affichuer unJtextField dans un Jpanel aprés que l'usger aie cliquer sur un bouton

    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
     
    public class FramePrincipal extends javax.swing.JFrame {
     
        public InterfacePrincipal() {
               initComponents();
         }
     
       private void initComponents() {
          panel1 = new java.awt.Panel();
      }
     
       private void RunMouseClicked(java.awt.event.MouseEvent evt) { 
           JTextField tf = new JTextField("mm");
           tf.setPreferredSize( tf.getPreferredSize() );
           tf.setText(""); // Empty the field.
            panel1.add( tf );
      }
     
       public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    FramePrincipal IP = new FramePrincipal ();
                    IP.setVisible(true);
     
                }
            });
     
    }
    mais quand je clique rien ne se passe ??

  2. #2
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
           JTextField tf = new JTextField("mm");
           tf.setPreferredSize( tf.getPreferredSize() );
           tf.setText(""); // Empty the field.
            panel1.add( tf );
           panel1.revalidate();
           panel1.repaint();

  3. #3
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    J'ai appliqué tes remarques mais il ne marche toujours pas

  4. #4
    Membre éclairé Avatar de mouss4rs
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    884
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 884
    Par défaut
    bonsoir,
    1. ou est ton bouton? car c'est ton bouton qui va réagir sur le JTextField et non pas l'inverse
    2. ta classe doit implementer la méthode actionListener.

  5. #5
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    voila

    private void RunMouseClicked(java.awt.event.MouseEvent evt) {
    JTextField tf = new JTextField("mm");
    tf.setPreferredSize( tf.getPreferredSize() );
    tf.setText(""); // Empty the field.
    panel1.add( tf );
    panel1.revalidate();
    panel1.repaint();
    }

  6. #6
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Citation Envoyé par harris_macken Voir le message
    voila
    Ah ok, tu crois qu'en créant une méthode RunMouseClicked elle va être appelée toute seule ?
    Ca fait depuis novembre que tu poses des questions sur le forum, j'ai l'impression que tu ne comprends toujours pas les bases même en Java.

    Tu devrais étudier les tutoriaux Sun => http://java.sun.com/docs/books/tutorial/uiswing/

    Et sérieusement ! Sinon tu ne vas pas progresser très vite.

  7. #7
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    Écoute, je pose des questions sur ce forum depuis dez ans pas depuis novembre et les autres m'ont toujours apporté un soutient et je leur remercie vivement

    si tu ne veux pas ou tu ne peux pas tu devrais éviter tout simplement de répondre. C'est pas toi le propriétaire du site et t'es même pas modérateur

    Alors de grâce tes commentaires désabusant pour toi et laisse les autres m'aider s'il le peuve

  8. #8
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    voila j'ai fait des test :

    avec le même bouton j'arrive à ajouter par exemple du texte dans un JTetfield quand l'usager clique dessus.
    Par contre ajouter un JTextField dans un panel sa ne marche pas

    Si vous pouvez m'aider...

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 43
    Par défaut
    Salut,

    avec le même bouton j'arrive à ajouter par exemple du texte dans un JTetfield quand l'usager clique dessus.
    Par contre ajouter un JTextField dans un panel sa ne marche pas
    Comment fais tu pour ajouter du texte ?

    Enfin bon, sinon tu peux ajouter ton JTextField et le masquer (setVisible(false)) puis l'afficher lorsque l'on clique sur ton bouton.
    Pour cela, utilises des listeners (équivalent de ta méthode RunMouseClicked mais qui est reconnu automatiquement):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    monBouton.addActionListener(new ActionListener() {
    		public void actionPerformed(ActionEvent e) {
    			monTextField.setVisible(true); // ou le traitement proposé par Natha
    		}
    	});
    Pour plus de renseignements sur les listeners tu peux voir : http://java.developpez.com/faq/gui/?...wing_listeners

  10. #10
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    Voila je viens de trouver

    en fait le probleme n'était pas le listener mais il fallait que je change le layout de mon panel en BoxLayout

    merci de votre aide

  11. #11
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Euh par contre je me rends compte d'un truc c'est que tu mélanges l'utilisation de Swing (JFrame, JTextfield) avec l'utilisation d'AWT (Panel), c'est surtout pour ça que ça ne fonctionne pas ! Ce n'est pas vraiment une question de layout car avec un JPanel ça aurait dû fonctionner avec ma solution.

    Il ne faut PAS mélanger AWT et Swing ! Sous peine de comportements non souhaités. => http://java.developpez.com/faq/gui/?..._melange_SWING

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

Discussions similaires

  1. Afficher une élément dans un Canvas après un clic sur un bouton
    Par D-Day dans le forum Windows Presentation Foundation
    Réponses: 3
    Dernier message: 28/02/2010, 19h39
  2. Afficher une image dans un JPanel
    Par yaya0057 dans le forum AWT/Swing
    Réponses: 8
    Dernier message: 04/04/2007, 00h10
  3. Comment afficher du texte dans un JPanel (ex:chat)
    Par remooz dans le forum AWT/Swing
    Réponses: 24
    Dernier message: 05/06/2006, 12h06
  4. comment afficher une image dans un jpanel ?
    Par 180degrés dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 18/04/2006, 15h33
  5. Afficher simple texte dans un JPanel
    Par tit_oune dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 12/04/2006, 12h20

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