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 :

Utiliser le contenu des TextField dans autre classe


Sujet :

Composants Java

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Utiliser le contenu des TextField dans autre classe
    Bonsoir,
    j'ai un problème car j'ai une jframe contient 2 textefield à remplir par l'utilisateur et leur contenue récupéré par une autre classe pour les utilisés dans 2 méthodes de cette classe

    je souhaite savoir :

    1- comment vérifier si les champs vide ou non
    2- comment récupérer le contenu d'un JTextField à partir d'une méthode d'une autre classe. mais avant ça je dois vérifier si les champs sont rempli si les chaps sont remplie l'utilisateur clique sur jButton pour choisir la méthode qui recuperé le textfield
    voici le code de jframe :
    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
     
    private JTextField getJTextField1() {
    		if (jTextField1 == null) {
    			jTextField1 = new JTextField();
    		}
    		return jTextField1;
    	}
     
    	private JTextField getJTextField2() {
    		if (jTextField2 == null) {
    			jTextField2 = new JTextField();
    		}
    		return jTextField2;
    	}
     
    private JButton getJButton0() {
    		if (jButton0 == null) {
    			jButton0 = new JButton();
    			jButton0.setText("somme");
    		}
    		return jButton0;
    	}
     
    	private JButton getJButton1() {
    		if (jButton1 == null) {
    			jButton1 = new JButton();
    			jButton1.setText("soustraction");
    		}
    		return jButton1;
    et le code de la classe
    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
     
     
    	public void depot (int sommeDepot){
    		Solde = Solde + sommeDepot;
    	}
     
    	public void retrait (int sommeRetrait){
    		Solde = Solde - sommeRetrait;
    	}
     
    	public int getSolde() {
    		return Solde;
    	}
     
    	public void setSolde(int solde) {
    		this.Solde = solde;
    	}
    merci d'avance

  2. #2
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juillet 2013
    Messages
    269
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 269
    Points : 434
    Points
    434
    Par défaut
    Bonsoir,
    Citation Envoyé par silasali Voir le message
    Bonsoir,
    1- comment vérifier si les champs vide ou non
    Pour vérifier si le champs est vide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if (jTextField.getText().isEmpty()) // au moins Java 6 il me semble
    Citation Envoyé par silasali Voir le message
    2- comment récupérer le contenu d'un JTextField à partir d'une méthode d'une autre classe. mais avant ça je dois vérifier si les champs sont rempli si les chaps sont remplie l'utilisateur clique sur jButton pour choisir la méthode qui recuperé le textfield
    Au vu de ta classe, ne dois tu pas plutôt appeler les méthodes de cette classe dans le JFrame du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monInstance.depot(Integer.valueOf(jTextField.getText()));

  3. #3
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Citation Envoyé par silasali Voir le message
    Bonsoir,
    j'ai un problème car j'ai une jframe contient 2 textefield à remplir par l'utilisateur et leur contenue récupéré par une autre classe pour les utilisés dans 2 méthodes de cette classe

    je souhaite savoir :

    1- comment vérifier si les champs vide ou non
    2- comment récupérer le contenu d'un JTextField à partir d'une méthode d'une autre classe. mais avant ça je dois vérifier si les champs sont rempli si les chaps sont remplie l'utilisateur clique sur jButton pour choisir la méthode qui recuperé le textfield
    Pour ce qui est de la récupération provenant d'une autre classe, tu peux créer une variable de classe à l'interieur de la classe de depart à qui tu affectes la valeur de ton jtextfield avant d'appeller la classe dans laquelle tu vas l'utiliser.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    //partie de déclaration générale de ta classe
    public static String var=null;
    //...dans actionPerfomed de ton bouton qui affichera ta nouvelle fenêtre tu mettras ce code :
    var=tonTextField.getText().tostring();
    //ensuite tu peux appeler ta nouvelle fenêtre
    Ensuite, dans ta nouvelle fenêtre (celle que tu vas afficher après la première) tu récupères cette valeur par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tonTextField.setText(frameDepart.var);
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  4. #4
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Utiliser une variable de classe est à mon sens une mauvaise idée/façon de faire (même si ça marche).

    Tu dois passer l'instance de cette te classe à ta JFrame pour pouvoir appeler directement les méthodes dessus.

    Ta JFrame :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    public class MaFrame extends JFrame
    {
      private MaClasseDeCalcul calcul;
     
      public MaFrame ( MaClasseDeCalcul val )
      {
        calcul = val;
      }
     
    // Le reste de ton code
    }
    Comme ça tu n'as plus qu'a faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jTextFieldSomme.setText(String.ValueOf(calcul.getSomme()));
    Pour vérifier que tous tes champs soit remplis, tu peux créer un évènement qui va vérifier que tous les champs soit remplis avant d'activer le 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
     
    textField1.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    verifierChamps();
                }
            });
    textField2.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    verifierChamps();
                }
            });
    textField3.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    verifierChamps();
                }
            });
     
     
    public verifierChamps()
    {
      monBouton.setEnable( !textField1.isEmpty() && !textField2.isEmpty() && !textField3.isEmpty() );
    }

    Cdt.

Discussions similaires

  1. utiliser des tableaux dans une class
    Par artemis93 dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 24/04/2011, 11h45
  2. Utilisation des methodes d'autres classes
    Par Viscapon dans le forum Langage
    Réponses: 3
    Dernier message: 10/05/2008, 22h53
  3. Comment inserer le contenu de TextField dans textArea
    Par Tootsi dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 15/01/2006, 13h33
  4. Pouvoir gérer les actions des boutons dans une classe
    Par Cyborg289 dans le forum Composants
    Réponses: 2
    Dernier message: 08/07/2005, 12h08
  5. Réponses: 2
    Dernier message: 27/03/2005, 16h09

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