?? mainclassxc.java
字號:
import java.awt.*;
import java.awt.event.*;
class Teacher
{ double numberOne,numberTwo;
String operator="";
boolean right;
public double giveNumberOne(double n)
{ numberOne=(int)(Math.random()*n)+1;
return numberOne;
}
public double giveNumberTwo(double n)
{ numberTwo=(int)(Math.random()*n)+1;
return numberTwo;
}
public String giveOperator()
{ double d=Math.random();
if(0<=d&&d<0.25)
operator="+";
else if(0.25<=d&&d<0.5)
operator="-";
else if(0.5<=d&&d<0.75)
operator="*";
else if(0.75<=d&&d<=1)
operator="/";
return operator;
}
public boolean getRight(double answer)
{ if(operator.equals("+"))
{ if(answer==numberOne+numberTwo)
right=true;
else
right=false;
}
else if(operator.equals("-"))
{ if(answer==numberOne-numberTwo)
right=true;
else
right=false;
}
else if(operator.equals("*"))
{if(answer==numberOne*numberTwo)
right=true;
else
right=false;
}
else if(operator.equals("/"))
{if(answer==numberOne/numberTwo)
right=true;
else
right=false;
}
return right;
}
}
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
{ double number1=teacher.giveNumberOne(100);
double 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()==giveAnwser) //判斷事件源是否是giveAnwser
{ String answer=textResult.getText();
try
{ double result=Double.parseDouble(answer);
if(teacher.getRight(result)==true)
{ message.setText("你回答正確");
}
else
{ message.setText("你回答錯誤");
}
}
catch(NumberFormatException ex)
{ message.setText("請輸入數字字符");
}
}
textResult.requestFocus();
}
}
public class MainClassxc
{ public static void main(String args[])
{ ComputerFrame frame;
frame=new ComputerFrame("算術測試");
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -