↓でtextFieldのtextFに"あ"と打った時
text1とtext2に数値を表示できるようにしました
そこでJButtonを押した時text1に表示した”10”とtext2に表示した"5"を足して
その結果をtextkekkaに表示したいのですがどうすればよいでしょうか?
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.EmptyBorder;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
public class tasu extends JFrame {
private JPanel contentPane; private JTextField textF; private JTextField text1; private JTextField text2; JButton btn; private JTextField textkekka; static EI en = new EI(); static FI fn = new FI(); /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { tasu frame = new tasu(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } public tasu() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); contentPane.setLayout(new BorderLayout(0, 0)); setContentPane(contentPane); textF = new JTextField(); textF.getDocument().addDocumentListener(new DocumentListener() { public void changedUpdate(DocumentEvent e){ } public void removeUpdate(DocumentEvent r){ } public void insertUpdate(DocumentEvent r){ text1.setText(en. hanasu(textF.getText())); text2.setText(fn. hanasu(textF.getText())); } } ); contentPane.add(textF, BorderLayout.NORTH); textF.setColumns(10); text1 = new JTextField(); contentPane.add(text1, BorderLayout.WEST); text1.setColumns(10); text2 = new JTextField(); contentPane.add(text2, BorderLayout.EAST); text2.setColumns(10); btn = new JButton("ボタン"); contentPane.add(btn, BorderLayout.CENTER); textkekka = new JTextField(); contentPane.add(textkekka, BorderLayout.SOUTH); textkekka.setColumns(10); }
}
class EI{
public String hanasu(String str1){ if(str1.equals("あ"))return "10"; int i1=Integer.parseInt(str1); return "?"; }
}
class FI{
public String hanasu(String str2){ if(str2.equals("あ"))return "5"; int i2=Integer.parseInt(str2); return "?"; }
}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/21 23:53