编写程序,实现一个简单的加法练习题功能。请同学们将窗口标题栏信息设置为自己的学号+姓名。

该程序创建了一个JavaSwingGUI应用,包含标签、文本框和按钮。用户可以点击出题生成[1,10]内两个随机数的加法问题,然后在文本框中输入答案。点击判断按钮,程序会检查用户答案是否正确,并在标签上显示结果。
摘要由CSDN通过智能技术生成

用户窗口采用FlowLayout不拘管理,其中有三个标签,一个文本框和两个按钮。初始,标签lblquestion信息为:“题目显示在此处”,标签lblmsg中信息为“判断结果显示在此处”,标签lbl中信息为“=”;文本框对象名为txtanswer,初始信息为空;按钮btnNewQue上信息为“出题”,按钮btnJudege上信息为判断。界面如图所示。

 点击"出题"按钮,将lblmsg及txtanswer中原有信息清空,同时产生两个范围在[1,10]内的随机整数,将加法题显示在标签lblquestion上,格式如“3+5”;如下图:

 点击“判断”按钮,从文本框中取出用户输入信息,与正确值进行判断,结果显示在lblmsg中,正确,显示“答对了”,否则显示“答错了,正确答案是。。“,如下图所示:

 

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;

public class Frame extends JFrame implements ActionListener {
   JLabel lblquestion;
   JLabel lblmsg;
   JLabel lbl;
   JLabel label;
   JButton btnNewQue;
   JButton btnJudege;
   JTextField txtanswer;
   int a;
   int b;
   int sum;
    String SUM;
    public Frame(){
        super("学号+班级");
        setBounds(600,300,400,200);
        setLayout(new FlowLayout());
        setResizable(false);
        setDefaultCloseOperation(3);
        setVisible(true);
    }
    public void init(){
        lbl=new JLabel("=");
        lblmsg=new JLabel("判断结果在此显示");
        lblquestion=new JLabel("题目显示在此处");
        label=new JLabel("                                                                                  ");
        txtanswer=new JTextField(25);

        btnJudege=new JButton("判断");
        btnNewQue=new JButton("出题");

        this.add(lblquestion);
        this.add(lbl);
        this.add(txtanswer);
        this.add(lblmsg);
        this.add(label);
        this.add(btnNewQue);
        btnNewQue.addActionListener(this);
        this.add(btnJudege);
        btnJudege.addActionListener(this);

        this.setVisible(true);
    }
    public  void setquestion(){
        Random r=new Random();
        a=r.nextInt(10)+1;
        b=r.nextInt(10)+1;
        sum=a+b;
        SUM=""+sum;
        String str=a+"+"+b;
        lblquestion.setText(str);
        this.setVisible(true);
    }
    @Override
    public void actionPerformed(ActionEvent e) {
        if(e.getSource()==btnNewQue){
            this.setquestion();
            lblmsg.setText("                             ");
        }else if(e.getSource()==btnJudege){
            if(txtanswer.getText().equals(SUM)){
                lblmsg.setText("恭喜你!回答正确!");
            }else {
                lblmsg.setText("回答错误!正确答案为"+SUM);
            }
        }
    }
}
public class test {
    public static void main(String[] args) {
        Frame frame=new Frame();
        frame.init();
    }
}

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值