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("汉英互译");
}
}
java学习:AWT组件和事件处理的笔记(1)--文本框上的ActionEvent事件的更多相关文章
- java学习:AWT组件和事件处理的笔记(1)--文本框
java.awt包中的TextField类是专门用来建立文本框的,即TextField类创建的一个对象便是一个文本框. 1.TextField类的主要方法 (1)TextField() ...
- java学习:AWT组件和事件处理的笔记(1)--Frame
1.java的抽象窗口工具包(AWT)中包含了许多类来支持GUI设计2.AWT由java的java.awt包提供3.再进行GUI编程时,要理解:容器类(Container),组件(component) ...
- java学习:AWT组件和事件处理的笔记(1)--菜单条,菜单,菜单项
菜单放在菜单条里,菜单项放在菜单里1.MenuBar 在java.awt包中,负责创建菜单条,即MenuBar的一个实例,便是一个菜单条. 在Frame类中的setMenuBar(Menu ...
- Android学习笔记-TextView(文本框)(二)
2.4 使用autoLink属性识别链接类型 当文字中出现了URL,E-Mail,电话号码,地图的时候,我们可以通过设置autoLink属性:当我们点击 文字中对应部分的文字,即可跳转至某默认APP, ...
- Android学习笔记(17):文本框TextView类
TextView继承自View.用于显示文本.它有很多的子类,掌握其属性是非常重要的. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5 ...
- JAVA学习AWT绘图
package com.graphics; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel ...
- java学习之路--零碎的知识笔记
java运算符: 自增自减运算符: int b = ++a; 拆分运算过程为: a=a+1=4; b=a=4, 最后结果为b=4,a=4 前缀自增自减法(++a,--a): 先进行自增或者自减运算,再 ...
- Android学习笔记-TextView(文本框)(一)
1.基础属性详解: id:为TextView设置一个组件id,根据id,我们可以在Java代码中通过findViewById()的方法获取到该对象,然后进行相关属性的设置,又或者使用RelativeL ...
- 【学习】文本框输入监听事件oninput
真实项目中遇到的,需求是:一个文本框,一个按钮,当文本框输入内容时,按钮可用,当删除内容时,按钮不可用. 刚开始用的focus和blur, $(".pay-text").focus ...
随机推荐
- MAC下用OPENSSL生成公钥和私钥
MAC OS自带了OpenSSL,所以不用去编译那一坨跟SHIT一样的源码.直接在命令行里使用OPENSSL就可以. 打开命令行工具,然后输入 openssl打开openssl,接着只要三句命令就可以 ...
- ecos编译redboot,vmware运行redboot,执行hello world(图形配置)
1- 下载源文件 :~/ecos$ ls -lrt total 80 drwxr-xr-x 7 XXXX XXXX 4096 Mar 27 2009 ecos-3.0 -rw-r--r-- 1 X ...
- 50个必备的实用jQuery代码段+ 可以直接拿来用的15个jQuery代码片段
50个必备的实用jQuery代码段+ 可以直接拿来用的15个jQuery代码片段 本文会给你们展示50个jquery代码片段,这些代码能够给你的javascript项目提供帮助.其中的一些代码段是从j ...
- MVC Controller 与 View 传值
Controller 到 View 1 强类型 控制器 // GET: /Test/ public ActionResult Index() { DateTime date = DateTime.No ...
- HQL(Hibernate Query language)语言
现在有两张表:student(学生表),classroom(教室表). //对象 Student 对应 student 表中有四个字段,分别是:id,name,age,classroom; publi ...
- mysql中插入多条记录-微软批处理
当向mysql中插入大量数据时,可以使用微软的批处理方式.这样可以防止内存溢出又提高了效率.我写了一个mysql中插入多条记录的例子.赋值代码可以直接使用. 1.首先需要添加两个dll MySql.D ...
- Uubntu scrot 的简单使用
scrot 是一个使用 imlib2 库截取屏幕和保存图像的的工具. 1:安装 #apt-get install scrot 2:查看帮助 #scrot -help -v, --version显示版本 ...
- Linux系统编程(4)——文件与IO之ioctl函数
ioctl是设备驱动程序中对设备的I/O通道进行管理的函数.所谓对I/O通道进行管理,就是对设备的一些特性进行控制,例如串口的传输波特率.马达的转速等等.它的参数个数如下:int ioctl(int ...
- Plus One 解答
Question Given a non-negative number represented as an array of digits, plus one to the number. The ...
- Median of Two Sorted Arrays 解答
Question There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median o ...