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

 Java Discussion :

problème communication entre deux composants de deux classes différentes


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2011
    Messages : 5
    Par défaut problème communication entre deux composants de deux classes différentes
    Bonjour tout le monde,
    j'ai un souci, je vous explique le problème: j'ai 2 classes (IHM) : Principale qui est un JFrame dans lequel il y a un JTextField (SaisiNomAnimateur) et un JBouton(btnOk), et Totalcaisse qui est un JDialog où il y a un JLabel (lblNomAnimateur).

    je voudrai que lorsque je clique sur btnOk le contenu de SaisiNomAnimateur se copie automatiquement dans lblNomAnimateur.

    alors je sais qu'il faut créer un BoutonListener qui ecoutera btnOk mais ça ne marche pas ! je vous donne le code de mes classes et si vous pouvez m'aider ça serai sympa, merciiiiiiiiiiiiiiiiii.

    code Principale :
    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
     
    package IHM;
    import IHM.Totalcaisse.*;
    import java.awt.event.*;
    import javax.swing.*;
     
     
    public class Principale extends javax.swing.JFrame{
     
     public static void main(String args[]) {
     
            java.awt.EventQueue.invokeLater(new Runnable() {
     
                public void run() {
                    new Principale().setVisible(true);
     
                }
            });
        }
     
        public Principale principale;
        public Totalcaisse totalcaisse;
     
     
        public Principale() {
            initComponents();
        }
        @SuppressWarnings("unchecked")
    private void SaisiNomAnimateurActionPerformed(java.awt.event.ActionEvent evt) {                                                  
     
                 String texte = SaisiNomAnimateur.getText();
                 totalcaisse.lblNomAnimateur.setText (texte);
                 btnOk.addActionListener(new BoutonListener());//écouteur de btnOk
    }
    private void btnOkActionPerformed(java.awt.event.ActionEvent evt) {
            String Saisi = SaisiNomAnimateur.getText();// recupèrer le contenu de SaisiNomAnimateur
            totalcaisse.lblNomAnimateur.setText(Saisi);// mettre le contenu de SaisiNomAnimateur dans lblNomAnimateur
            btnOk.addActionListener(new BoutonListener());//écouteur de btnOk
        }    
    class BoutonListener  implements ActionListener{
     
                    public void actionPerformed(ActionEvent arg0) {
                           String Saisi = SaisiNomAnimateur.getText();
                           totalcaisse.lblNomAnimateur.setText(Saisi);
                           btnOk.addActionListener(this);
                    }
     
            }
     
     
    }
    Code Totalcaisse :
    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
    package IHM;
     
    import IHM.Principale.*;
    import java.awt.*;
    import java.awt.event.*;
     
     
    public class Totalcaisse extends javax.swing.JDialog implements ActionListener {
     
        public Principale principale;
        public Totalcaisse totalcaisse;
     
       public void actionPerformed(ActionEvent e) {
           principale.btnOk.addActionListener(new BoutonListener());
            throw new UnsupportedOperationException("Not supported yet.");
        }
     
        public static final int RET_CANCEL = 0;
        /** A return status code - returned if OK button has been pressed */
        public static final int RET_OK = 1;
     
        public Totalcaisse(java.awt.Frame parent, boolean modal) {
            super(parent, modal);
            initComponents();
     
        }
        private void lblNomAnimateurComponentHidden(java.awt.event.ComponentEvent evt) {                                                
            String Saisi = principale.SaisiNomAnimateur.getText();
            lblNomAnimateur.setText(Saisi);
            principale.btnOk.addActionListener(new BoutonListener());
        } 
         public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
     
                public void run() {
                    Totalcaisse dialog = new Totalcaisse(new javax.swing.JFrame(), true);
                    dialog.addWindowListener(new java.awt.event.WindowAdapter() {
     
                        public void windowClosing(java.awt.event.WindowEvent e) {
                            System.exit(0);
                        }
                    });
                    dialog.setVisible(true);
                }
            });
        }
        class BoutonListener  implements ActionListener{
     
                    public void actionPerformed(ActionEvent arg0) {
                           String Saisi = principale.SaisiNomAnimateur.getText();
                           totalcaisse.lblNomAnimateur.setText(Saisi);
                           principale.btnOk.addActionListener(this);
                    }
        }
     
    }

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 713
    Par défaut
    Tu as fait quelque chose de beaucoup trop compliqué.

    Question :
    Est-ce que ton JFrame "Principale" sera ouvert de façon unique ou pas ?
    cad est-ce qu'on peut avoir plusieurs "Principale" ouvert en même temps à l'écran ?

    Si oui, tu peux utiliser une variable statique qui désigne ton JFrame dans ta classe "Principale"
    Si non, tu dois instancier "Principale" et passer la référence à ton JDialog.

    Si tu es encore plus perplexe, c'est normal.
    Répond alors à la question ci-dessus et je te guiderai dans le bon choix.
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

Discussions similaires

  1. Réponses: 10
    Dernier message: 27/03/2015, 07h49
  2. Réponses: 8
    Dernier message: 06/02/2015, 17h30
  3. Problème communication entre les agents
    Par jawhane dans le forum Programmation par agent
    Réponses: 0
    Dernier message: 20/11/2013, 11h11
  4. [AC-2007] problème communication entre msaccess2007 et serveur ole
    Par hocine dans le forum Access
    Réponses: 0
    Dernier message: 29/05/2012, 16h10
  5. Réponses: 6
    Dernier message: 28/02/2004, 09h19

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