我只是學習使用ActionListener
s並使小工具工作。 這是我的簡單程序,我想打印任何我輸入的JTextField
。爲什麼這個ActionListener不工作?
TextViewer1
import javax.swing.JFrame;
public class TextViewer1 {
/**
* @param args
*/
public static void main(String[] args) {
JFrame frame = new TextFrame1();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
TextFrame1
import java.awt.event.ActionListener;
import javax.swing.*;
public class TextFrame1 extends JFrame {
private static final int FRAME_WIDTH = 300;
private static final int FRAME_HEIGHT = 200;
public TextFrame1() {
createComponents();
setSize(FRAME_WIDTH, FRAME_HEIGHT);
}
private void createComponents() {
JPanel panel = new JPanel();
add(panel);
JTextField textbox = new JTextField(20);
panel.add(textbox);
String TYPED = textbox.getText();
ActionListener sendsText = new TextListener();
textbox.addActionListener(sendsText);
}
}
的TextListener
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class TextListener implements ActionListener {
/**
* @param args
*/
public void actionPerformed(ActionEvent event) {
System.out.println(TYPED);
}
}
所以proble m是'TextListener'中的變量TYPED
,它想要創建這個變量並初始化它。
有什麼不對?
感謝您的迴應,仍然有一個錯誤:>>>在TextFrame1 >>> 的ActionListener sendsText =新的TextListener(類型);錯誤消息:構造函數TextListener(String)未定義 – 2013-02-11 21:53:04
編號傳入「JTextField」而不是文本本身。查看更新。 :) – Reimeus 2013-02-11 21:56:55