java中的AWT组件及事件处理

创建边界为(100,100,150,150)的窗口,要求在text1上输入,和在text2上输入,在text2上输入回车后,将text1的值和text2的值相加后在text3上上面显示,如果text1或者text2上面的值不能被转换成数字,则在text3上面输出:输入格式错误。

import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

class Jisuanceshi extends Frame{
Label l1 = new Label("数字1");
Label l2 = new Label("数字2");
Label l3 = new Label("和");
TextField text1 = new TextField(10);
TextField text2 = new TextField(10);
TextField text3= new TextField(10);
public Jisuanceshi(){
this.setBounds(100,100,130,220);
this.setLayout(new FlowLayout());
add(l1);
add(text1);
add(l2);
add(text2);
add(l3);
add(text3);
text2.addActionListener(
new ActionListener(){

@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(!"".equals(text1.getText().trim())&&!"".equals(text2.getText().trim())){
int x,y ;
try{
x = Integer.parseInt(text1.getText().trim());
y = Integer.parseInt(text2.getText().trim());
x = x+y;
text3.setText(""+x);
}catch(Exception ex){
text3.setText("格式不对");
}
}
}

}
);
this.addWindowListener(
new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
);
this.validate();
this.setVisible(true);
}

}
public class Jisuan {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new Jisuanceshi();
}

}
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-06
做加法器? 你没有给事件注册监听器
第2个回答  2011-05-08
代码我都懒得写了,思路对了代码很简单,自己多摸索,比复制别人现成的要好。
首先新建3个JTextFiled 分别为text1,text2,text3
当检测到text2输入回车的时候,先判断是否输入的是数字,可以用正则来判断,如果是数字则相加,再显示到text3上;否则显示“格式错误”.
刚看了楼上代码,根本没判断是否输入回车,其他地方基本可以借鉴。
第3个回答  2011-05-09
做加法器? 你没有给事件注册监听器

java中什么是事件源,事件的处理过程是什么
窗口被关闭,那么事件源就是窗口 事件源---产生--->事件--->被事件监听器发现--->进入事件处理代码 import java.awt.Frame;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class DemoAction extends Frame {\/\/窗口就是事件源public DemoAction() {this.setTitle("窗...

AWT术语解释
在Java1.0的AWT(旧AWT)和Java1.1以后的AWT(新AWT)之间存在很大区别。新AWT克服了旧AWT的许多缺点,在设计上有较大改进,使用也更方便。新AWT的主要介绍内容包括:用户界面组件;事件处理模型;图形和图像工具,包括形状、颜色和字体类;布局管理器,可以进行灵活的窗口布局而与特定窗口的尺寸和屏幕...

AWT系列是什么意思?
其中,AWT基础知识是学习AWT的前提,GUI组件是AWT系列中最为基础和重要的内容,而布局管理器则是掌握GUI开发的关键所在。高级GUI组件、事件处理、绘图和图像处理是AWT系列的进阶内容,对于想要在GUI开发中有所突破的开发者来说尤为重要。AWT系列的学习对于Java开发者来说是非常有意义的,不仅可以帮助开发者...

java awt的事件响应和线程的问题:当事件响应被促发后是不是会单独产生...
不会单独产生一个线程,通常系统层面实现的就是一个主线程(UI线程)和一个消息队列,该主线程读取消息队列,并将相应的消息派发给相应的Listener对象,并执行该对象的方法。比如OnClickListener接口是一个协议,即:只要你写的类满足该接口的定义,那么就可以被系统调用;当点击后,系统的底层会产生一个...

简述事件处理机制
当事件源发生事件时,就会自动调用该事件的接口方法,而方法中就是编写的事件处理程序代码。要实现AWT中事件处理,需以下三步:1、 事件源:能够产生事件的对象都可以成为事件源,如文本框,按钮等。事件源必须是一个对象,而且这个对象必须是Java认为能够发生时间的对象。2、 监视器 需要一个对象对事件...

在Java Applet程序中,如果对发生的事件做出响应和处理的时候,应该使 ...
java.awt包是抽象窗口工具包,里面包括各种容器、组件、窗口布局管理器以及一些常用的类如Color、Font等,选项A满足题意。而java.applet包里面包括了小程序执行时必须要重载的一个类Applet,也就只有这一个类,选项D错误。java.io包主要是提供一些输入/输出类的,选项B不满足题意。java.awt.event包...

为什么一提到java的swing和awt组件,大家都不建议学?,这两
此外,它缺乏扩展性,因为 JVM 中的 AWT 类实例仅包含本地组件的引用,仅允许通过 Canvas 组件从零开始创建自定义组件,无法继承和重用已有的 AWT 组件。相比之下,Swing 是 AWT 的一个改进版本,属于 JFC(Java Foundation Class)的一部分。Swing 旨在解决 AWT 的不足之处,提供丰富的组件类型、...

AWT 全称
抽象窗口工具包AWT (Abstract Window Toolkit) 是 API为Java 程序提供的建立图形用户界面GUI (Graphics User Interface)工具集,AWT可用于Java的applet和applications中。它支持图形用户界面编程的功能包括: 用户界面组件;事件处理模型;图形和图像工具,包括形状、颜色和字体类;布局管理器,可以进行灵活的...

如何在java程序中,当点击一个按钮后,关闭当前窗口,开启一个新的窗口...
首先分析需要的GUI技术 java中一般使用swing 和awt技术来实现图形界面,Swing组件较多,功能比较强大,所以这里使用Swing组件来实现。窗口使用(JFrame),按钮使用(JButton)。设想一个符合题目需求的场景 两个窗口关联并且跳转,最常见的场景就是登陆了。登陆窗口,输入用户名和密码,如果成功就跳转到主窗口 ...

如何让java同时响应鼠标事件与键盘事件
通过这种模型,事件发生时是委托事件处理者进行处理,事件处理者与组件的设计可以分别独立。具体来说,事件监听器实现了java.util.EventListener接口,不过这个接口只是个标示接口(Marker Interface),其中并没有规定必须实现的方法。对于Java SE窗口程序而言,相对应的事件监听器主要位于java.awt.event与javax...

相似回答
大家正在搜