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

AWT/Swing Java Discussion :

Récupérer texte dans le "main"


Sujet :

AWT/Swing Java

Vue hybride

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

    Informations forums :
    Inscription : Octobre 2007
    Messages : 65
    Par défaut Récupérer texte dans le "main"
    Bonjour, j'ai un souci en java:
    je crée une fenetre avec un champ de texte et un boutton, je voudrais que, lorsque que j'ai écrit du texte dans ce champ et qu'apres j'appuie sur la fenetre, je puisse récupérer ce texte et l'afficher dans l'invite de commande. J'ai pour cela créé deux classes, une pour la fenêtre et une pour le programme principal "main".
    Je tiens absolument à récupérer mon texte dans le main et pas dans la classe qui crée la fenêtre (je fais cela pour l'adapter à un programme plus compliqué ensuite...).
    Voici mon code:
    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
     
    /**classe graphique
    *construction d'une fenetre
    *@author XXX
    */
    import java.io.*;
    import java.util.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
    public class Fensimple implements ActionListener{
    //attributs
    private JFrame fenetre;
    private JButton boutonA;
    private JTextField champA;
    private Dimension dimension;
    //constructeur
    public Fensimple() {
    this.fenetre=new JFrame("Récupération");
    this.champA=new JTextField(20);
    this.dimension=new Dimension(100,100);
    this.boutonA=new JButton("récupérer");
    Container conteneur = fenetre.getContentPane(); 
    GridLayout disposition = new GridLayout(10,1);
    conteneur.setLayout(disposition); 
    //on ajoute tout
    conteneur.add(this.champA); 
    conteneur.add(this.boutonA); 
    boutonA.addActionListener(this);
    this.fenetre.setBounds(300,300,300,300); }
    //getteurs
    public JButton getBoutonA (){
        return boutonA;
                                }
    public JTextField getChampA (){
        return champA;
                                  }
    //méthodes
    public void actionPerformed(ActionEvent e){    
        String log=new String(champA.getText());
                }
    public void setVisible(boolean b){
        if (b) { this.fenetre.setVisible(true);
                }
        else { this.fenetre.setVisible(false);
              }
                                     }
    }
    et le "main":

    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
     /**classe controleur
    *main de l'application
    *@author XXX
    */
    import java.io.*;
    import java.util.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
    public class Tu{
    public static void main (String args[]) throws java.lang.NoSuchMethodError, java.lang.NoClassDefFoundError{
    Fensimple fen=new Fensimple();
    fen.setVisible(true);
    System.out.println(fen.getChampA().getText());
    }
    }
    Le System.out.print n'affiche rien peu importe ce que je rentre comme texte dans le champ de la fenêtre, je n'arrive pas à solutionner ce problème.
    Si quelqu'un sait, c'est gentil de m'aider, merci.

  2. #2
    Membre Expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Par défaut
    Salut,

    Bon, je pense que c'est normal que ton println ne t'affiche rien.. Parce qu'en fait, tu penses que ce println est fait seulement après que tu ais cliqué sur le bouton Récupérer, alors qu'en fait, il fait le print de suite après avoir lancé la fenêtre... Donc, le champ est vide et s'est normal ^^

    Essai d'initialiser ton champ à la définition, tu verras bien si c'est bien le problème

    Voilà, j'espères t'avoir aidé
    ++
    Gueritarish

Discussions similaires

  1. [MySQL] Sauvegarder du texte (db mysql) CR, single-quote, double-quote, etc
    Par vandeyy dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 12/03/2007, 11h22
  2. Récupérer texte dans des variables
    Par Coussati dans le forum Langage
    Réponses: 8
    Dernier message: 12/11/2005, 18h26
  3. Réponses: 5
    Dernier message: 15/04/2005, 14h22

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