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 :

Récupérer des variables dans JTextField


Sujet :

Composants Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Récupérer des variables dans JTextField
    Bonjour,

    Pour un TP, nous avons un exercice dans lequel il faut créer une interface graphique qui envoie des emails en renseignant l'adresse d'origine, de destination, un objet et un message. Nous disposons d'un serveur SMTP dans notre université, l'envoi du mail en Java fonctionne mais je rencontre un autre souci.

    Nous devions faire l'application en plusieurs classes et je souhaiterai afficher les textes entrés dans les formulaires (expéditeur, destinataire, objet et message) dans la console lorsque je clique sur OK. Je vous donne les codes de mes 3 classes afin que vous puissiez jeter un oeil :

    Fenetre.java
    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
    58
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
     
    public class Fenetre extends JFrame implements ActionListener{
     
    	protected JLabel destinataire;
    	protected JLabel objet;
    //	public String texte;
    	private ChampTexte expediteur;
     
    public Fenetre(){
     
    	this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    	this.setSize(600,300);
    	this.setTitle("Expéditeur de messages");
    	this.setVisible(true);
     
    	Container cp = this.getContentPane();
     
    	JPanel panel = new JPanel();
    	cp.add(panel,BorderLayout.NORTH);
    	panel.setLayout(new BorderLayout());
     
    	expediteur = new ChampTexte("Expéditeur : ");
    	ChampTexte destinataire = new ChampTexte("Destinataire : ");
    	ChampTexte objet = new ChampTexte("Objet : ");
     
    	panel.add(expediteur,BorderLayout.NORTH);
    	panel.add(destinataire,BorderLayout.CENTER);
    	panel.add(objet,BorderLayout.SOUTH);
     
    	JTextArea message = new JTextArea();
    	cp.add(message,BorderLayout.CENTER);
     
    	JButton bouton = new JButton("Envoyer");
    	cp.add(bouton,BorderLayout.SOUTH);
    	bouton.addActionListener(this);
    	this.setVisible(true);
    }
     
    	public static void main(String[] args){
    	Fenetre maFenetre = new Fenetre();
    	}
     
    /*	public String toString(){
    	String n = new String();
    	n = ChampTexte.gettexte();
    	return(n);
    	}*/
     
    	public void actionPerformed(ActionEvent e){
     
    	System.out.println("Expediteur : "+expediteur.gettexte());
    //	System.out.println("Evenement !");
    //	Email monEmail = new Email();
    	}
    }
    ChampTexte.java
    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
    import java.awt.*;
    import javax.swing.*;
    import javax.swing.border.Border;
     
    public class ChampTexte extends JPanel{
     
    	public String texte;
    	public JTextField text;
     
    	public ChampTexte(String a){
    		JLabel label = new JLabel(a);
    		Ligne text = new Ligne();
     
    		this.setLayout(new BorderLayout());
    		this.add(label,BorderLayout.WEST);
    		this.add(text,BorderLayout.EAST);
    	}
     
    	public String gettexte(){
    	return(text.getText());}
     
    	public static void main(String[] args) {}
    }
    Ligne.java
    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
    import java.awt.*;
    import javax.swing.*;
    import javax.swing.border.Border;
     
    public class Ligne extends JTextField{
     
    	public Ligne() {
    		super.setPreferredSize(new Dimension(500,20));
    	}
     
    	public static void main (String[] args){}
    }
     
     
    	public void actionPerformed(ActionEvent e){
     
    	System.out.println("Expediteur : "+expediteur.gettexte());
    //	System.out.println("Evenement !");
    //	Email monEmail = new Email();
    }
    Les commentaires sont des lignes que je laisse selon l'utilisation que je souhaite mais je n'arrive pas à afficher le contenu de la case Expéditeur dans le System.out.println("Expediteur : "+expediteur.gettexte());

    Désolé si je ne respecte pas toujours la casse des noms de classe ou d'objets...

    Merci d'avance !

    Un étudiant bloqué...

  2. #2
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    Bonjour,

    c'est lequel que tu essayes de lancer, dans ligne je vois un main avec un action listener, si c'est celui la c'est normal il n'est lié à rien.

    Pour l'autre dans ChampTexte tu fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // déclaration variable
    public JTextField text;
    //et dans le constructeur
    Ligne text = new Ligne();
    remplace par:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public Ligne text;
     
    //et dans le constructeur
    text = new Ligne();
    L'Etat est bien administré quand l'escalier de l'école est usé et que l'herbe croît sur celui du tribunal.

    Modérateur BI

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci pour ton aide et ta réponse rapide

Discussions similaires

  1. Récupérer des variables dans un fichier
    Par Invité dans le forum Shell et commandes GNU
    Réponses: 8
    Dernier message: 05/06/2014, 00h17
  2. récupérer des variables dans un formulaire. JSP
    Par galia dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 13/09/2012, 10h06
  3. [MySQL] Récupérer des variables dans un formulaire
    Par rico the hobbit dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 10/04/2010, 11h04
  4. Récupérer des variables dans un texte collé
    Par Victor01 dans le forum Langage
    Réponses: 27
    Dernier message: 30/09/2009, 13h54
  5. [Regex] Récupérer des Variables dans une phrase.
    Par Jimmy_S dans le forum Windows Forms
    Réponses: 3
    Dernier message: 28/05/2008, 20h50

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