数学题练习器,答对一题,就在文本区域内打印出来,答错打出错误提示,一共有十道简单数学题

//MathProblem.java主要涉及界面字体
import java.awt.*;
import java.awt.event.*;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class MathProblem extends Frame implements ActionListener {
    private static final long serialVersionUID = 1L;
    
    TextArea ta;
    JTextField tf1,tf2;
    Label lb1,lb2;
    Button bt1,bt2,bt3;
    Panel p1,p2,p3,p4,p5,p6;
    Frame f;
    Font fo;
    Color color;
    String tips1;
    String tips2;
    int i;
    Question qu=new Question();
    
    MathProblem(){
        
        fo=new Font("宋体",Font.BOLD,20);
        color=Color.BLACK;
        tips1="回答正确!";
        tips2="回答错误!";
        
        i=0;
        ta=new TextArea();
        ta.setFont(fo);
        ta.setForeground(color);
        ta.setSize(480, 180);
        ta.setEditable(true);
        
        tf1=new JTextField(20);
        tf2=new JTextField(10);
        tf1.setHorizontalAlignment(JTextField.CENTER);
        tf1.setText(qu.math[i]);
        tf1.setEditable(true);
        tf2.setEditable(true);
        
        lb1=new Label("题目:");
        lb2=new Label("答案:");
        
        bt1=new Button("确定");
        bt2=new Button("上一题");
        bt3=new Button("下一题");
        bt1.addActionListener(this);
        bt2.addActionListener(this);
        bt3.addActionListener(this);
        
        p1=new Panel();
        p2=new Panel();
        p3=new Panel();
        p1.add(ta);
        p2.add(lb1);
        p2.add(tf1);
        p2.add(lb2);
        p2.add(tf2);
        p3.setLayout(new GridLayout(1,3));
        p3.add(bt1);
        p3.add(bt2);
        p3.add(bt3);

        
        f=new Frame("练习题");
        f.setVisible(true);
        f.setResizable(false);
        f.setSize(700, 370);
        f.setLocationRelativeTo(null);
        f.add(p1,BorderLayout.NORTH);
        f.add(p2,BorderLayout.CENTER);
        f.add(p3,BorderLayout.SOUTH);
        f.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
        
    }

    public void actionPerformed(ActionEvent e) {
        if(e.getSource().equals(bt1)){
            if(tf2.getText().equals(qu.mathKey[i])){
                ta.setForeground(color.GREEN);
                ta.setText(qu.math[i]+qu.mathKey[i]+"\n"+tips1);
            }
            else{
                ta.setText(tips2);
                ta.setForeground(color.RED);
            }
        }
        if(e.getSource().equals(bt2)){
            i--;
            ta.setForeground(color);
            if(i>=0){
                tf1.setText(qu.math[i]);
                tf2.setText(null);
                ta.setText(null);
            }
            else{
                ta.setText("已经是第一题!");
                i=0;
            }
        }
        if(e.getSource().equals(bt3)){
            i++;
            ta.setForeground(color);
            if(i<=9){
                tf1.setText(qu.math[i]);
                tf2.setText(null);
                ta.setText(null);
            }
            else{
                ta.setText("已经是最后一题!");
                i=9;
            }
        }
        
    }
    public static void main(String args[]){
        MathProblem mp=new MathProblem();
    }
}
//question.java放置题目和答案
public class Question {
    String[] math;
    String mathKey[]={"2","4","8","2","7","45","4","124","132","1"};
    Question(){
        math=new String[10];
        math[0]="1+1=";
        math[1]="10-6=";
        math[2]="2*4=";
        math[3]="6÷3=";
        math[4]="1+2*3=";
        math[5]="(100-10)*2=";
        math[6]="(7+1)÷2=";
        math[7]="1+123=";
        math[8]="64÷2+100=";
        math[9]="8+1-8=";
    }
}

java小程序练习题 java答题小程序_错误提示

java小程序练习题 java答题小程序_错误提示_02

java小程序练习题 java答题小程序_错误提示_03

java小程序练习题 java答题小程序_System_04