我正在尝试添加ActionListener
一个JTextField
并将该文本字段作为动作侦听器本身.每当我这样做,我都会收到错误,说
The method addActionListener(ActionListener) in the type JTextField is not applicable for the arguments (JTextField)
String strBox1; JTextField textBox1, textBox2, textBox3; JTextArea textArea1, displayArea; public textBoxes() { setLayout (new GridLayout(10,2)); JLabel query1 = new JLabel("Daily Savings:"); add(query1); textBox1 = new JTextField("Dsave", 5); add(textBox1); textBox1.addActionListener(textBox1); //textBox1.getDocument().addDocumentListener(new MyDocumentListener()); JLabel query2 = new JLabel("Current Age:"); add(query2); textBox2 = new JTextField("Cage", 5); add(textBox2); JLabel query3 = new JLabel("Initial Savings amount:"); add(query3); textBox3 = new JTextField("ISA", 5); add(textBox3); JLabel query4 = new JLabel("Age of Retirement:"); add(query4); JTextField textBox4 = new JTextField("AoR", 5); add(textBox4); JLabel query5 = new JLabel("Annual Retirement Income:"); add(query5); JTextField textBox5 = new JTextField("ARI", 5); add(textBox5); JLabel query6 = new JLabel("Life Expectancy:"); add(query6); JTextField textBox6 = new JTextField("LR", 5); add(textBox6); JLabel query7 = new JLabel("Interest Rate on Return of Savings:"); add(query7); JTextField textBox7 = new JTextField("IRoRoS", 5); add(textBox7); JLabel query8 = new JLabel("Inflation %:"); add(query8); JTextField textBox8 = new JTextField("I%", 5); add(textBox8); } class MyDocumentListener implements DocumentListener { public void insertUpdate(DocumentEvent e) { } public void removeUpdate(DocumentEvent e) { System.out.println("change -" + e); } public void changedUpdate(DocumentEvent e) { } } class MyTextActionListener implements ActionListener { public void actionPerformed(ActionEvent e) { } } }
MadProgramme.. 5
基本上,JTextField
没有实现ActionListener
界面,所以你不能做你正在尝试的.
您需要提供有效的ActionListener
实现.
有关更多详细信息,请参见如何编写动作侦听器