1. 手工编写加法器的可视化程序。 一个Frame窗体容器,布局为null,三个TextField组件,一个Button组件。 Button组件上添加ActionEvent事件监听器ActionListener和 函数actionPerformed, 其中,前两个TextField组件进行输入,第三个TextField组件用于输出, 并完成两个整数的加法运算。 注意:还需要对Frame窗体添加WindowEvent事件监听器WindowAdapter和 函数windowClosing,退出程序。

package chapter8;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; public class demo1 {
public static void main(String[] args) {
Frame f1=new Frame("加法计算器");
int f1width=800;
int f1heigh=600;
f1.setLayout(null);
f1.setBounds(0, 0, f1width, f1heigh);
TextField tf1=new TextField();
tf1.setBounds(f1width/6-50, f1heigh/3, 100,50);
TextField tf2=new TextField();
tf2.setBounds(f1width/6*3-50, f1heigh/3, 100,50);
TextField tf3=new TextField();
tf3.setBounds(f1width/6*5-50, f1heigh/3, 100,50);
Button bt1=new Button("计算");
bt1.setBounds(f1width/2-50, f1heigh/2+100, 100,100);
f1.add(tf1);
f1.add(tf2);
f1.add(tf3);
f1.add(bt1);
f1.setVisible(true);
MyWindowAdapter mwa=new MyWindowAdapter();
f1.addWindowListener(mwa);
MyActionListener mal=new MyActionListener(tf1,tf2,tf3);
bt1.addActionListener(mal);
}
static class MyActionListener implements ActionListener{
TextField tf1;
TextField tf2;
TextField tf3; MyActionListener(TextField tf1,TextField tf2,TextField tf3){
this.tf1=tf1;
this.tf2=tf2;
this.tf3=tf3;
} @Override
public void actionPerformed(ActionEvent e) {
int ans=Integer.parseInt(tf1.getText())+Integer.parseInt(tf2.getText());
tf3.setText(""+ans);
}
}
static class MyWindowAdapter extends WindowAdapter {
public void windowClosing(WindowEvent we){
System.exit(-1);
}
}
}

最新文章

  1. BZOJ 1711: [Usaco2007 Open]Dining吃饭
  2. AngularJs解决方案笔记(1)
  3. bower 新建.bowerrc文件
  4. .net ftp上传文件方法
  5. POJ1062昂贵的聘礼(dijkstra)
  6. Log4net 集成到MVC+EF框架
  7. Android 解决ScrollView下嵌套ListView进页面不在顶部的问题
  8. 用CALayer实现淡入淡出的切换图片效果
  9. SQL每个用户最后的一条记录
  10. Qt事件机制浅析(定义,产生,异步事件循环,转发,与信号的区别。感觉QT事件与Delphi的事件一致,而信号则与Windows消息一致)
  11. 子查询有OR无法展开,改写成union
  12. java多线程同步
  13. YUM安装软件
  14. 从.Net到Java学习第九篇——SpringBoot下Thymeleaf
  15. 总结·展望
  16. 设计模式之Facade(外观)(转)
  17. Linux grep命令使用方法
  18. Linux桌面“彩”起来:桌面环境及窗口管理器大盘点
  19. forget word _a
  20. [2016北京集训试题14]股神小D-[LCT]

热门文章

  1. MySQL性能分析之Explain
  2. MySQL login-path 本地快捷登陆
  3. Java基础之增强for循环
  4. Windows 下配置 Logstash 为后台服务
  5. [原创]MYSQL周期备份shell脚本
  6. Spring Cloud Alibaba | Sentinel: 服务限流高级篇
  7. panic: time: missing Location in call to Time.In
  8. 网页学习:day1
  9. C#控制台打开VM虚拟机
  10. Linux中的保护机制