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 :

Convertir un JTextField en String


Sujet :

Composants Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut Convertir un JTextField en String
    J'ai un problème pour faire cette action

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    BufferedReader l_buff = new BufferedReader(new InputStreamReader( System.in));
    String text_field= jTextField.paramString();
    text_field = l_buff.readLine();
    Je dois utiliser la méthode paramString mais je dois pas correctement l'utiliser et dans la javadoc c'est pas très bien expliqué.

  2. #2
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations
    Tu dois l'utiliser ? Qu'est-ce que tu t'attends à avoir ? Parce que là, ben tu crées une string qui a comme valeur ce qu'il y a dans paramString, puis tu l'écrases avec ce qu'il y a dans le buffer
    Je vois pas trop là

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Je pensais que la méthode paramString() permettait de convertir le JTextField en string.
    Connais-tu une méthode pour réaliser cette action, stp ?

  4. #4
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    Comme JTextField hrite de JTextComponent, il y a :
    getText
    public String getText()
    Returns the text contained in this TextComponent. If the underlying document is null, will give a NullPointerException.

    Returns:
    the text
    Throws:
    NullPointerException - if the document is null
    See Also:
    setText(java.lang.String)

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    BufferedReader l_buff = new BufferedReader(new InputStreamReader( System.in));
    String text_field= jTextField.getText();
    text_field = l_buff.readLine();
    erreur : Cannot make a static reference to the non-static field jTextField

  6. #6
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    Ben vi ça me parait normal.... pas d'instance de JTextField créée, pas de getText();

    Bon, explique moi donc le contexte... Tu as un JTextField de créé, tu veux en créer un ? Tu veux écrire ce que l'utilisateur écrit dans la console ? Tout ça quoi...

    [edit : a pas vu la minuscule...]

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    en fait je veux taper du texte dans un JTextField qui est ensuite affiché dans un JTextPane. Pour l'instant ça marche.
    Et enfin je veux envoyer le texte tapé via le port série, pour cela j'ai besoin que ce texte soit converti en String.

  8. #8
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    Ben ça compile chez moi... Tu compiles avec quelle version ?

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    mport java.io.*;
    import javax.swing.*;
    import java.awt.event.*;
    import java.awt.BorderLayout;
    
    
    public class Chat extends JFrame {
    
    	private JPanel jContentPane = null;
    	private JTextPane jTextPane = null;
    	private JButton jButton = null;
    	private JTextField jTextField = null;
    
    
    	public Chat() {
    		super();
    		initialize();
    	}
    
    
    	private void initialize() {
    		this.setSize(434, 248);
    		this.setContentPane(getJContentPane());
    		this.setTitle("JFrame");
    	}
    
    
    	private JPanel getJContentPane() {
    		if (jContentPane == null) {
    			jContentPane = new JPanel();
    			jContentPane.setLayout(null);
    			jContentPane.add(getJTextPane(), null);
    			jContentPane.add(getJButton(), null);
    			jContentPane.add(getJTextField(), null);
    		}
    		return jContentPane;
    	}
    
    	private JTextPane getJTextPane() {
    		if (jTextPane == null) {
    			jTextPane = new JTextPane();
    			jTextPane.setBounds(new java.awt.Rectangle(0,0,366,126));
    		}
    		return jTextPane;
    	}
    
    	
    	private JButton getJButton() {
    		if (jButton == null) {
    			jButton = new JButton();
    			jButton.setBounds(new java.awt.Rectangle(306,168,67,42));
    			jButton.setText("ok");
    			jButton.addActionListener(new java.awt.event.ActionListener() {
    				public void actionPerformed(java.awt.event.ActionEvent e) {
    					jTextPane.setText(jTextField.getText());
    				}
    			});
    		}
    		return jButton;
    	}
    
    
    	private JTextField getJTextField() {
    		if (jTextField == null) {
    			jTextField = new JTextField();
    			jTextField.setBounds(new java.awt.Rectangle(12,161,258,53));
    		}
    			return jTextField;
    	}
    
    
    	
    	 public static void main( String args[]) {
    		 
    	  Chat cb = new Chat ();
    	  cb.setVisible(true);
    		 
    	  Runtime rt = Runtime.getRuntime();
    	  Process p = null;
    	  String portname = "com1:";   
    	  String cmd[] = {
    	   "c:\\windows\\system32\\cmd.exe", "/c",
    	   "start", "/min",
    	   "c:\\windows\\system32\\mode.com", portname,
    	   "baud=9600", "parity=n", "data=8",
    	   "stop=2", 
    	   };
    	 
    	 try {
    	   p = rt.exec( cmd );
    	   if( p.waitFor() != 0 ) {
    	    System.out.println("Error executing command: " + cmd );
    	    System.exit( -1 );
    	    }
    	   while(true){
    	   BufferedReader l_buff = new BufferedReader(new InputStreamReader( System.in));
    	   String text_field= jTextField.getText();
    	   text_field = l_buff.readLine();	
    	   
    	   byte data[] =  text_field.getBytes();
    	   FileOutputStream fos = new FileOutputStream(portname);
    	   BufferedOutputStream bos = new BufferedOutputStream(fos);
    	   fos.write(data, 0, data.length);
    	   fos.close();
    	   }
    	   }
    	  
    	  catch( Exception e ) {
    	   e.printStackTrace();
    	   }
    	 }
    }
    voici mon programme
    j'utilise la version suivante : jdk1.5.0_06

  10. #10
    Membre habitué
    Inscrit en
    Mars 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 10
    Par défaut salam
    j'ai un problème consiste à:
    je saisie les données dans une zone texte, s'il ya erreur. un boite de dialogue sera affiché, mon problème est: j veux que lecurseur sera dans la cette zone texte.
    merci

  11. #11
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    @remooz :
    String text_field= jTextField.getText();
    jTextField est un membre de Chat, don tu dois l'appeller en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    cb.getJTextField();
    @tawsi

    je vois pas trop le rapport avec la choucroute, désolé ....

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    De cette manière ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String text_field= cb.getJTextField().getText();

  13. #13
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    exact, là tu récupères le text contenu dans le JTextField

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Il n'y a plus d'erreur mais lors du test avec hyperterminal rien ne s'affiche.

  15. #15
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    BufferedReader l_buff = new BufferedReader(new InputStreamReader( System.in));
     
               //là tu récupères ce qu'il y a dans ton JTextField
              // et tu le mets dans text_field
               String text_field=cb.getJTextField().getText();
               //là, tu récupères ce qu'il y a dans la console, visiblement (System.in)
               //et tu le remets dans text_field
    	   text_field = l_buff.readLine();	
     
                // là tu envoies ce qu'il y a dans textfield, c'est à dire ce qu'il y a dans la 
               // console
    	   byte data[] =  text_field.getBytes();
    En quoi la console t'est utile dèjà ?

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Le texte contenu dans la console sera envoyé via RS232.

  17. #17
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    OK, donc le texte contenu dans la console est envoyé via
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    byte data[] =  text_field.getBytes();
    car dans text_field, pour l'instant, il n'y a que le text inclus dans la console...
    Pas de problème !
    Et le texte de ton JTextField, il doit aller où ?

  18. #18
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Il est converti dans la String text_field

  19. #19
    Membre expérimenté Avatar de dazz_x
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 269
    Par défaut
    Bon, j'arrive pas trop à comprendre ce qu'il se passe, donc si tu pouvais faire des phrases un ch'ti peu moins sybillines ...

    tu me dis que tu envoies la console sur ton OutputStream et qu'en même temps (avec la même variable) tu y envoies ce qu'il se trouve dans JTextField ? Tu veux tout envoyer en même temps ?

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Par défaut
    Je voudrais afficher le texte tapé dans ma zone de texte et en même temps l'envoyé via le port série.
    Utiliser deux variables différentes serait plus judicieux ?

Discussions similaires

  1. [C#] Convertir un ArrayList en String[] ?
    Par Amerok dans le forum ASP.NET
    Réponses: 13
    Dernier message: 06/12/2005, 15h38
  2. Comment convertir un champs en string ?
    Par kalisto95 dans le forum ASP
    Réponses: 2
    Dernier message: 22/09/2005, 12h15
  3. Comment convertir un TChartTitle en string ?
    Par marsupilami34 dans le forum Langage
    Réponses: 4
    Dernier message: 25/07/2005, 14h14
  4. Réponses: 14
    Dernier message: 29/06/2005, 10h22
  5. [C#] Convertir des bytes en string
    Par sorcer1 dans le forum Windows Forms
    Réponses: 8
    Dernier message: 03/02/2005, 15h52

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