java学习:AWT组件和事件处理的笔记(1)--文本框上的ActionEvent事件

学习处理事件时,必须很好的掌握事件源,监视器,处理事件的接口
    1.事件源
        能够产生java认可事件的对象都可称为事件源,也就是说事件源必须是对象
    2.监视器
        监视事件源,以便对发生的事件做出处理
        如:对文本框,这个方法为:
            addActionListener(监视器);
    3.处理事件的接口
        为了让监视器这个对象能对事件源发生的事件进行处理,创建该监视器对象的类必须声明实现相应的接口,即必须在类体中给出该接口中所有方法的方法体
        java.awt.event包中提供了许多事件类和处理各种事件的接口。
            对于文本框,这个接口的名字是ActionListener,这个接口的唯一方法为:public void actionPerformed(ActionEvent e)
        为了能监视到ActionEvent类型的事件,事件源必须使用addActionListener方法获得监视器,创建监视器的类必须实现接口ActionListener
        ActionEvent类有如下常用方法:
            1.   public Object getSource()
                    ActionEvent对象调用该方法可以获取发生ActionEvent事件的事件源对象的引用
            2. public String getActionCommand()
                    ActionEvent对象调用该方法可以获取发生ActionEvent事件时,和该事件相关的一个命令字符串
    注意:创建监视器对象的类必须声明实现相应的接口:
        class A implements xxxListener
实战演练:当用户在文本框text1中输入英语单词并按Enter键,文本框text3中立即显示汉语意思;在文本框text2中中输入汉语单词并按Enter键后,文本框text3中立即显示英文意思

代码如下:

import java.awt.*;
import java.awt.event.*;
class Mywindow extends Frame implements ActionListener
{
    TextField text1,text2,text3;
    Mywindow(String s){
        setTitle(s);
        setLayout(new FlowLayout());
        text1=new TextField(8);
        text2=new TextField(8);
        text3=new TextField(15);
        add(text1);
        add(text2);
        add(text3);
        text1.addActionListener(this);
        text2.addActionListener(this);
        setBounds(100,100,150,150);
        setVisible(true);
        validate();
    }
    public void actionPerformed(ActionEvent e){
        if(e.getSource()==text1)
        {
            String word=text1.getText();
            if(word.equals("boy"))
            {
                text3.setText("男孩");
            }
            else if(word.equals("girl"))
            {
                text3.setText("女孩");
            }
            else if(word.equals("sun"))
            {
                text3.setText("太阳");
            }
            else
            {
                text3.setText("没有该单词");
            }

        }
        else if(e.getSource()==text2)
        {
            String word=text2.getText();
            if(word.equals("男孩"))
            {
                text3.setText("boy");
            }
            else if(word.equals("女孩"))
            {
                text3.setText("girl");
            }
            else if(word.equals("太阳"))
            {
                text3.setText("sun");
            }
            else
            {
                text3.setText("没有该单词");
            }

        }
    }
}
public class Example3
{
    public static void main(String[] args){
        Mywindow win=new Mywindow("汉英互译");
    }
}
时间: 2024-10-03 17:49:02

java学习:AWT组件和事件处理的笔记(1)--文本框上的ActionEvent事件的相关文章

java学习:AWT组件和事件处理的笔记(1)--文本框

java.awt包中的TextField类是专门用来建立文本框的,即TextField类创建的一个对象便是一个文本框. 1.TextField类的主要方法    (1)TextField()        创建的文本框可编辑,用户可在文本框中输入若干个字符,可见字符序列长度为一个机器字符长    (2)TextField(int x)        创建的文本框可编辑,用户可在文本框中输入若干个字符,可见字符序列长度为x个机器字符长    (3)TextField(String s)      

java学习:AWT组件和事件处理的笔记(1)--Frame

1.java的抽象窗口工具包(AWT)中包含了许多类来支持GUI设计2.AWT由java的java.awt包提供3.再进行GUI编程时,要理解:容器类(Container),组件(component).4.Button,Scrollbar.Canvas,List,Checkbox,TextField,TextArea,Label类是java.awt包中的类,更是java.awt包中的Component(组件)的子类.5.java把Component类的子类或间接子类创建的对象称为组件.6.jav

java学习:AWT组件和事件处理的笔记(1)--菜单条,菜单,菜单项

菜单放在菜单条里,菜单项放在菜单里1.MenuBar    在java.awt包中,负责创建菜单条,即MenuBar的一个实例,便是一个菜单条.    在Frame类中的setMenuBar(MenuBar bar)方法,可把菜单条添加到窗口的顶端,但只能向窗口中添加一个菜单条2.Menu    在java.awt包中,负责创建菜单,即Menu的一个实例,便是一个菜单.    Meun类的方法如下:            Menu()   建立一个空标题的菜单            Menu(S

JAVA学习AWT绘图

package com.graphics; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; /** * 1:Graphics类是所有图形上下文的抽象基类. * * 2:Graphics2D继承了Graphics类,实现了功能更加强大的绘图操作的集合. * 由于Graphics2D类是Graphics类的扩展,也是推荐使用的java绘图类 * 所以本章主要介绍使用Graphics2D类实

java 学习 —— AWT布局组件

自己学习java中AWT开发窗体程序中的几种窗口组件,做一下笔记 FlowLayout: import java.awt.*; public class Wintwo2 extends Frame{ //定义一个文本框. TextArea a=new TextArea("请准确填写信息"); //定义三个按钮组件. Button b1=new Button("提交"); Button b2=new Button("取消"); Button b3=

Android学习笔记-TextView(文本框)(二)

文章参考自:http://www.runoob.com/w3cnote/android-tutorial-textview.html 2.4 使用autoLink属性识别链接类型 当文字中出现了URL,E-Mail,电话号码,地图的时候,我们可以通过设置autoLink属性:当我们点击 文字中对应部分的文字,即可跳转至某默认APP,比如一串号码,点击后跳转至拨号界面! all就是全部都包含,自动识别协议头~ 在Java代码中可以调用setAutoLinkMask(Linkify.ALL); 这个

java学习--基础知识进阶第十二天--笔记

网络编程(Socket) 编写程序使实现了网络互连的设备(计算机)之间实现数据的交换 网络编程的三要素 IP 它是唯一标识一台设备 IPv4 255... IPv6 端口 它是唯一标识设备上的应用程序的 范围:0~65535,0~1024这些端口是给系统预留,我们自已用的端口一般使用1024以上的 协议 UDP:面向无连接,效率高,不安全,区分发送端和接收端 TCP:面向连接,效率低,安全,区分客户端和服务端 InetAddress类 用于表示IP地址 常用方法: static InetAddr

Android学习笔记-TextView(文本框)(一)

参考自文章:http://www.runoob.com/w3cnote/android-tutorial-textview.html 1.基础属性详解: id:为TextView设置一个组件id,根据id,我们可以在Java代码中通过findViewById()的方法获取到该对象,然后进行相关属性的设置,又或者使用RelativeLayout时,参考组件用的也是id! layout_width:组件的宽度,一般写:**wrap_content**或者**match_parent(fill_par

JAVA学习笔记(四十四)- AWT组件 (Abstract Window Toolkit)

Frame窗体组件 import java.awt.Color; import java.awt.Frame; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; /* * Frame窗体组件 */ public class Test01 { public static void main(String[] args) { Frame frame=new Frame("我的窗体"); //创建窗