我做了一个东西,有2个text,在一个text中写一个字进去,另一个text中也会出现这个字
但中间出现了一个问题import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JTextField;
import java.awt.event.*;//import javax.swing.event.*;/*
* 创建日期 2006-1-30
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/public class TestButton1 extends JFrame { private JPanel jContentPane = null;
private JTextField jTextField1 = null;
private JTextField jTextField2 = null; /**
* This is the default constructor
*/
public TestButton1() {
super();
initialize();
jTextField1.addKeyListener(new KeyListener()
{
public void keyReleased(KeyEvent e){
}
}
);
} /**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(300, 200);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
} /**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJTextField1(), null);
jContentPane.add(getJTextField2(), null);
}
return jContentPane;
} /**
* This method initializes jTextField1
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField1() {
if (jTextField1 == null) {
jTextField1 = new JTextField();
jTextField1.setBounds(new java.awt.Rectangle(27,13,114,28));
}
return jTextField1;
} /**
* This method initializes jTextField2
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField2() {
if (jTextField2 == null) {
jTextField2 = new JTextField();
jTextField2.setBounds(new java.awt.Rectangle(28,56,115,25));
}
return jTextField2;
}
void change(){
jTextField2.setText(jTextField1.getText());
}}*****************************************************************************************
这段程序在eclipse中提示出错
出错的地方是在TestButton1的构造方法这里jTextField1.addKeyListener(new KeyListener()
编译器提示说KeyListener()类必须继承抽象的方法
假如我换成
jTextField1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
//调用函数
}
});
程序就可以运行,只是用ActionListener并不能实现我要做的东西~
请高人指点
但中间出现了一个问题import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JTextField;
import java.awt.event.*;//import javax.swing.event.*;/*
* 创建日期 2006-1-30
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/public class TestButton1 extends JFrame { private JPanel jContentPane = null;
private JTextField jTextField1 = null;
private JTextField jTextField2 = null; /**
* This is the default constructor
*/
public TestButton1() {
super();
initialize();
jTextField1.addKeyListener(new KeyListener()
{
public void keyReleased(KeyEvent e){
}
}
);
} /**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(300, 200);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
} /**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJTextField1(), null);
jContentPane.add(getJTextField2(), null);
}
return jContentPane;
} /**
* This method initializes jTextField1
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField1() {
if (jTextField1 == null) {
jTextField1 = new JTextField();
jTextField1.setBounds(new java.awt.Rectangle(27,13,114,28));
}
return jTextField1;
} /**
* This method initializes jTextField2
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField2() {
if (jTextField2 == null) {
jTextField2 = new JTextField();
jTextField2.setBounds(new java.awt.Rectangle(28,56,115,25));
}
return jTextField2;
}
void change(){
jTextField2.setText(jTextField1.getText());
}}*****************************************************************************************
这段程序在eclipse中提示出错
出错的地方是在TestButton1的构造方法这里jTextField1.addKeyListener(new KeyListener()
编译器提示说KeyListener()类必须继承抽象的方法
假如我换成
jTextField1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
//调用函数
}
});
程序就可以运行,只是用ActionListener并不能实现我要做的东西~
请高人指点
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货