TextField类
1、TextField类:java.awt.TextField类用来创建文本框对象
2、TextField事件监听:TextField对象可能发生Action(光标在文本框内敲回车)事件,与该事件对应的事件类是java.awt.event.ActionEvent、用来处理ActionEvent事件是实现了java.awt.event.ActionListener接口的类的对象,ActionListener接口定义方法:public void actionPerformed(ActionEvent e)、实现该接口的类要在该方法中添加处理该事件(Action)的语句、使用addActionListen(ActionListener l)方法为TextField对象注册一个ActionListener对象,当TextField对象发生Action事件时,会生成一个ActionEvent对象,该对象作为参数传递给ActionListener对象的actionPerformer方法在方法中可以获取该对象的信息,并做相应的处理(TFActionEvent.java、TFPassword.java 、 TFMath.java)
import java.awt.*;import java.awt.event.*;public class TFActionEvent {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubnew TFFrame();}}@SuppressWarnings("serial")class TFFrame extends Frame{TFFrame(){TextField tf = new TextField();add(tf); //将tf添加到Frame中tf.addActionListener(new TFActionListener());//pack();setVisible(true);}}class TFActionListener implements ActionListener //监听器类{public void actionPerformed(ActionEvent e){TextField tf = (TextField)e.getSource();//System.out.println(tf.getText());tf.setText("");}}import java.awt.*;import java.awt.event.*;public class TFPassword {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubnew TFFrame2();}}@SuppressWarnings("serial")class TFFrame2 extends Frame{TFFrame2(){TextField tf = new TextField();add(tf);tf.addActionListener(new TFActionListener2());tf.setEchoChar('*'); //设置回旋字符pack();setVisible(true);}}class TFActionListener2 implements ActionListener{public void actionPerformed(ActionEvent e){TextField tf = (TextField)e.getSource();System.out.println(tf.getText());tf.setText("");}}import java.awt.*;import java.awt.event.*;public class TFMath {public static void main(String[] args) {new TFFrame1().launchFrame();}}@SuppressWarnings("serial")class TFFrame1 extends Frame {TextField num1, num2, num3; //成员变量,可以让其他类使用public void launchFrame() {num1 = new TextField(10); //设置文本框宽度num2 = new TextField(10);num3 = new TextField(15);Label lblPlus = new Label("+"); //创建标签,局部变量Button btnEqual = new Button("=");btnEqual.addActionListener(new MyMonitor());setLayout(new FlowLayout());add(num1);add(lblPlus);add(num2);add(btnEqual);add(num3);pack();setVisible(true);}private class MyMonitor implements ActionListener {//内部类,注意定义位置public void actionPerformed(ActionEvent e) {int n1 = Integer.parseInt(num1.getText());int n2 = Integer.parseInt(num2.getText());num3.setText("" + (n1+n2));}}}//class MyMonitor implements ActionListener {/*TextField num1, num2, num3; //直接传入参数public MyMonitor(TextField num1, TextField num2, TextField num3) {this.num1 = num1;this.num2 = num2;this.num3 = num3;}public void actionPerformed(ActionEvent e) {int n1 = Integer.parseInt(num1.getText());int n2 = Integer.parseInt(num2.getText());num3.setText("" + (n1+n2));}*//*TFFrame tf = null; //对TFFrame引用public MyMonitor(TFFrame tf) {this.tf = tf;}public void actionPerformed(ActionEvent e) {int n1 = Integer.parseInt(tf.num1.getText());int n2 = Integer.parseInt(tf.num2.getText());tf.num3.setText("" + (n1+n2));}}*/