Visual Studio 2010(VS)--数学口算测验器⑧
上期回顾(上期主要完成了乘法除法的运算代码编写,数学的测验器基本上算完成):
这期继续再优化下,比如倒计时5秒时,控件背景亮红色提醒,比如错误答案亮红色正确答案亮绿色
1.0 插入到定时器响应程序中,当计时未结束,并且当时间等于5秒时背景色亮红色
else if (timeLeft > 0)//时间还未结束
{
timeLeft = timeLeft - 1;//每次都把剩余减1
//控件文本显示倒计时和字符串seconds
//控件文本只能显示字符串,但是如果是字符串+数字等也是可以的
timeLabel.Text = timeLeft + "seconds";
if (timeLeft == 5)//当计时器来到5秒时,背景色设为红色
{
timeLabel.BackColor = Color.Red;
}
}
2.0 这样功能就有了,但是这里还要做个初始化,不然背景会一直红色,在StartTheQuiz()下,加入背景初始化
//计时控件背景色初始化白色
timeLabel.BackColor = Color.White;
3.0 做对错核验跟这个差不多,这里也先在StartTheQuiz()下做背景初始化
//计算结果控件背景初始化
SUM.BackColor = Color.White;
Difference.BackColor = Color.White;
Product.BackColor = Color.White;
Quotient.BackColor = Color.White;
4.0 自定义一个函数,来当计时结束后判断对错
public void CorrectPapers()//倒计时结束后批改对错,对的显绿色,错的显红色
{
if (addend1 + addend2 != SUM.Value)
{
SUM.BackColor = Color.Red;
}
else
SUM.BackColor = Color.Green;
if (minuend - subtrahend != Difference.Value)
{
Difference.BackColor = Color.Red;
}
else
Difference.BackColor = Color.Green;
if (multiplicand * multiplier != Product.Value)
{
Product.BackColor = Color.Red;
}
else
Product.BackColor = Color.Green;
if (dividend / divisor != Quotient.Value)
{
Quotient.BackColor = Color.Red;
}
else
Quotient.BackColor = Color.Green;
}
5.0 在定时响应中调用,等计时到了后,去核验对错
6.0 F5调试,你将看到如下的画面