テキストフィールドとactionPerformed()
から値を取得するにはどうすればよいですか?さらに処理するために、値をString
に変換する必要があります。 String
に入力した値を保存する必要があるボタンをクリックして、テキストフィールドを作成しました。コードスニペットを提供してください。
testField.getText()
JTextField についてはJavaドキュメントを参照してください
サンプルコードは次のとおりです。
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
String textFieldValue = testField.getText();
// .... do some operation on value ...
}
})
* 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()
}
})
テキストフィールドから値を取得する方法
mytestField.getText();
ActionListner
の例:
mytextField.addActionListener(this);
public void actionPerformed(ActionEvent evt) {
String text = textField.getText();
textArea.append(text + newline);
textField.selectAll();
}
私が役立ったのは、以下のこの状態です。
String tempEmail = "";
JTextField tf1 = new JTextField();
tf1.addKeyListener(new KeyAdapter(){
public void keyTyped(KeyEvent evt){
tempEmail = ((JTextField)evt.getSource()).getText() + String.valueOf(evt.getKeyChar());
}
});
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);
}
}
今その働き
actionPerformed
内でevent.getSource()
frimを使用するだけです
コンポーネントにキャストする
たとえば、コンボボックスが必要な場合
JComboBox comboBox = (JComboBox) event.getSource();
JTextField txtField = (JTextField) event.getSource();
適切なAPIを使用して値を取得し、
例のために.
Object selected = comboBox.getSelectedItem(); etc.