web-dev-qa-db-fra.com

Comment récupérer la valeur de JTextField dans Java Swing?

Comment pouvons-nous récupérer la valeur d'un champ de texte et actionPerformed()? J'ai besoin que la valeur soit convertie en String pour un traitement ultérieur. J'ai créé un champ de texte en cliquant sur un bouton. J'ai besoin de stocker la valeur entrée dans un String pouvez-vous s'il vous plaît fournir un extrait de code?

34
harshini
testField.getText()

Voir le Java doc pour JTextField

Le code exemple peut être:

button.addActionListener(new ActionListener(){
   public void actionPerformed(ActionEvent ae){
      String textFieldValue = testField.getText();
      // .... do some operation on value ...
   }
})
54
Harry Joy
* First we declare JTextField like this

 JTextField  testField = new JTextField(10);

* We can get textfield value in String like this on any button click event.

button.addActionListener(new ActionListener(){
   public void actionPerformed(ActionEvent ae){
      String getValue = testField.getText()

   }
})
9
Chetan

Comment récupérer une valeur d'un champ de texte?

mytestField.getText();

ActionListner exemple:

mytextField.addActionListener(this);

public void actionPerformed(ActionEvent evt) {
    String text = textField.getText();
    textArea.append(text + newline);
    textField.selectAll();
}
7

Ce que j'ai trouvé utile est cette condition qui est ci-dessous.

String tempEmail = "";
JTextField tf1 = new JTextField();

tf1.addKeyListener(new KeyAdapter(){
    public void keyTyped(KeyEvent evt){
         tempEmail = ((JTextField)evt.getSource()).getText() + String.valueOf(evt.getKeyChar());
    }
});
4
ArifMustafa
import Java.awt.*;
import Java.awt.event.*;
import javax.swing.*;

public class Swingtest extends JFrame implements ActionListener
{
    JTextField txtdata;
    JButton calbtn = new JButton("Calculate");

    public Swingtest()
    {
        JPanel myPanel = new JPanel();
        add(myPanel);
        myPanel.setLayout(new GridLayout(3, 2));
        myPanel.add(calbtn);
        calbtn.addActionListener(this);
        txtdata = new JTextField();
        myPanel.add(txtdata);
    }

    public void actionPerformed(ActionEvent e)
    {
        if (e.getSource() == calbtn) {
            String data = txtdata.getText(); //perform your operation
            System.out.println(data);
        }
    }

    public static void main(String args[])
    {
        Swingtest g = new Swingtest();
        g.setLocation(10, 10);
        g.setSize(300, 300);
        g.setVisible(true);
    }
}

maintenant son travail

3
jayesh

Il suffit d'utiliser event.getSource() frim dans actionPerformed

Jeter le composant

pour Ex, si vous avez besoin de combobox

JComboBox comboBox = (JComboBox) event.getSource();
JTextField txtField = (JTextField) event.getSource();

utiliser une api appropriée pour obtenir la valeur,

pour Ex.

Object selected = comboBox.getSelectedItem();  etc.
2
Anuj Singh