java事件处理实验_java实验六 组件与事件处理 (无脑实验系列)

1.算术测试。

²  实验要求:

编写一个算书测试小软件,用来训练小学生的算术能力。程序由3个类组成,其中Teacher类对象负责给出算术题目,并判断回答者的答案是否正确;ComputerFrame类对象负责为算术题目提供视图,比如用户可以通过ComputerFrame类对象提供的GUI界面看到题目,并通过该GUI界面给出题目的答案;MainClass是软件的主类。

package lzy;

public class MainClass

{ public static void main(String args[])

{

ComputerFrame frame;

frame=new ComputerFrame("算术测试 ");//创建窗口,其标题为:算术测试

}

}

package lzy;

import java.awt.*;

import java.awt.event.*;

public class ComputerFrame extends Frame implements ActionListener

{

TextField textOne,textTwo,textResult;

Button getProblem,giveAnwser;

Label operatorLabel,message;

Teacher teacher;

ComputerFrame(String s)

{ super(s);

teacher=new Teacher();

setLayout(new FlowLayout());

textOne=new TextField(10); //创建textOne,其可见字符长是10

textTwo=new TextField(10); //创建textTwo,其可见字符长是10

textResult=new TextField(10); //创建textResult,其可见字符长是10

operatorLabel=new Label("+");

message=new Label("你还没有回答呢");

getProblem=new Button("获取题目");

giveAnwser=new Button("确认答案");

add(getProblem);

add(textOne);

add(operatorLabel);

add(textTwo);

add(new Label("="));

add(textResult);

add(giveAnwser);

add(message);

textResult.requestFocus();

textOne.setEditable(false);

textTwo.setEditable(false);

getProblem.addActionListener(this); //将当前窗口注册为getProblem的ActionEvent事件监视器

giveAnwser.addActionListener(this); //将当前窗口注册为giveAnwser的ActionEvent事件监视器

textResult.addActionListener(this); //将当前窗口注册为textResult的ActionEvent事件监视器

setBounds(100,100,450,100);

setVisible(true);

validate();

addWindowListener(new WindowAdapter()

{ public void windowClosing(WindowEvent e)

{ System.exit(0);

}

}

);

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==getProblem) //判断事件源是否是getProblem

{

int number1=teacher.giveNumberOne(100);

int number2=teacher.giveNumberTwo(100);

String operator = teacher.giveOperator();

textOne.setText(""+number1);

textTwo.setText(""+number2);

operatorLabel.setText(operator);

message.setText("请回答");

textResult.setText(null);

}

if(e.getSource()==

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值