using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.VisualBasic;
namespace 学生孝题系统
{
public partial class Exam_frm : Form
{
DateTime lastTime;
sqlstuConnect con = new sqlstuConnect();
DataSet ds;
DataTable dt;
DataRow dr;
String strSql = "";
int examNum = 50;
CurrencyManager mypoint;
char[] checkinfo = null;//记录用户选择信息
int[] sum = null;
string[] info;
public Exam_frm()
{
InitializeComponent();
}
private void Exam_frm_Load(object sender, EventArgs e)
{
sum = new int[examNum];
checkinfo = new char[examNum];
// strSql = "select top 20 * from 试题 ";//order by rnd( -1*snumber+timer())"; //access 中的随机取数
strSql = "select top 20 * from 试题 order by newid()"; //sqlServer中的随机取数 ds= con.selectData(strSql, "examQution");
dt = ds.Tables["examQution"];
timer1.Enabled = true;
lastTime = DateTime.Now.AddHours(2);
//this.dataGridView1.DataSource = dt;
mypoint = (CurrencyManager)BindingContext[dt];
showQuession();
//label
//info = Longin_frm.stuinfo.Split('|');
label2.Text = info[0].ToString().Trim();
label6.Text = info[1].ToString().Trim();
label4.Text = info[2].ToString().Trim();
label8.Text = info[3].ToString().Trim(); leave_lb.Text= "剩余题数:20";
for (int i = 0; i < examNum; i++)
{
checkedListBox1.Items.Add("第" + (i+1) + "题");
leave_cb.Items.Add("第" + (i + 1) + "题");
checkinfo[i] = 'e';
sum[i] =0;
}
checkedListBox1.SelectedIndex = mypoint.Position;//默认位置为0
}
public void timer1_Tick(object sender, EventArgs e)
{
TimeSpan myts = lastTime - DateTime.Now;
time_lab.Text = myts.Hours + ":" + myts.Minutes + ":" + myts.Seconds;
if (myts.Equals(new TimeSpan(0,0,0)))
{
int tsum = 0;
for (int i = 0; i < mypoint.Count; i++)
{
tsum += sum[i];
}
timer1.Stop();
string strSql = "update 学生报名表 set score=" + tsum + " where sno='" + info[0] + "'";
if (con.updateDate(strSql) == true)
{
MessageBox.Show("您本次考试" + tsum + "分加油哦!!!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
Application.Exit();
}
}
} private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
/* dt = ds.Tables[0];
dr = dt.Rows[checkedListBox1.SelectedIndex];
quesstion_tb.Text = dr[1].ToString();*/
mypoint.Position = checkedListBox1.SelectedIndex;
showQuession();
}
private void showQuession()
{ dr = dt.Rows[mypoint.Position];//取行
quesstion_tb.Text = dr[1].ToString();//取字段
this.a_rab.Text = dr[2].ToString();
this.b_rab.Text = dr[3].ToString();
this.c_rab.Text = dr[4].ToString();
this.d_rab.Text = dr[5].ToString();
switch(checkinfo[mypoint.Position])
{
case 'a':
a_rab.Checked=true;
break;
case 'b':
b_rab.Checked=true;
break;
case 'c':
c_rab.Checked=true;
break;
case 'd':
d_rab.Checked=true;
break;
case 'e':
a_rab.Checked=false;
b_rab.Checked=false;
c_rab.Checked=false;
d_rab.Checked=false;
break;
}
this.Text = dr[6].ToString();
}
private void next_btn_Click(object sender, EventArgs e)
{
if (mypoint.Position <mypoint.Count-1)
{
mypoint.Position++;
}
else
{
mypoint.Position = 0;
}
showQuession();
this.checkedListBox1.SelectedIndex = mypoint.Position;
} private void pre_btn_Click(object sender, EventArgs e)
{
if (mypoint.Position > 0)
{
mypoint.Position--;
}
else
{
mypoint.Position = examNum-1;
}
showQuession();
this.checkedListBox1.SelectedIndex = mypoint.Position;
}
private void a_rab_CheckedChanged(object sender, EventArgs e)
{
this.Text = "";
if (a_rab.Checked == true)
{
checkinfo[mypoint.Position] = 'a';
}
if (b_rab.Checked == true)
{
checkinfo[mypoint.Position] = 'b';
}
if (c_rab.Checked == true)
{
checkinfo[mypoint.Position] = 'c'; }
if (d_rab.Checked == true)
{
checkinfo[mypoint.Position] = 'd';
}
if (dr[6].ToString().Equals(checkinfo[mypoint.Position].ToString().Trim()))
{
sum[mypoint.Position] =100/mypoint.Count;
}
else
{
sum[mypoint.Position] =0;
}
for (int i = 0; i < 20; i++)
{
this.Text +=sum[i].ToString();
}
leave_cb.Items.Clear();
for (int i = 0; i < mypoint.Count; i++)
{
if ((checkinfo[i].ToString().Trim().Equals("e")))
{
leave_cb.Items.Add("第" + (i + 1) + "题");
leave_lb.Text = "剩余题数:" + leave_cb.Items.Count;
}
}
}
private void leave_cb_SelectedIndexChanged(object sender, EventArgs e)
{
checkedListBox1.Focus();
checkedListBox1.SelectedItem = leave_cb.SelectedItem.ToString();
mypoint.Position = checkedListBox1.SelectedIndex;
showQuession();
}
private void cofirm_btn_Click(object sender, EventArgs e)
{
if (MessageBox.Show("您确定要结束答题吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)==DialogResult.Yes)
{
int tsum = 0; for (int i = 0; i < mypoint.Count; i++)
{
tsum += sum[i];
}
string strSql = "update 学生报名表 set score=" + tsum + " where sno='" + info[0] + "'";
if (con.updateDate(strSql) == true)
{
MessageBox.Show("您本次考试" + tsum + "分加油哦!!!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
Application.Exit();
}
}
}
}
}
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.VisualBasic;
namespace 学生孝题系统
{
public partial class Exam_frm : Form
{
DateTime lastTime;
sqlstuConnect con = new sqlstuConnect();
DataSet ds;
DataTable dt;
DataRow dr;
String strSql = "";
int examNum = 50;
CurrencyManager mypoint;
char[] checkinfo = null;//记录用户选择信息
int[] sum = null;
string[] info;
public Exam_frm()
{
InitializeComponent();
}
private void Exam_frm_Load(object sender, EventArgs e)
{
sum = new int[examNum];
checkinfo = new char[examNum];
// strSql = "select top 20 * from 试题 ";//order by rnd( -1*snumber+timer())"; //access 中的随机取数
strSql = "select top 20 * from 试题 order by newid()"; //sqlServer中的随机取数 ds= con.selectData(strSql, "examQution");
dt = ds.Tables["examQution"];
timer1.Enabled = true;
lastTime = DateTime.Now.AddHours(2);
//this.dataGridView1.DataSource = dt;
mypoint = (CurrencyManager)BindingContext[dt];
showQuession();
//label
//info = Longin_frm.stuinfo.Split('|');
label2.Text = info[0].ToString().Trim();
label6.Text = info[1].ToString().Trim();
label4.Text = info[2].ToString().Trim();
label8.Text = info[3].ToString().Trim(); leave_lb.Text= "剩余题数:20";
for (int i = 0; i < examNum; i++)
{
checkedListBox1.Items.Add("第" + (i+1) + "题");
leave_cb.Items.Add("第" + (i + 1) + "题");
checkinfo[i] = 'e';
sum[i] =0;
}
checkedListBox1.SelectedIndex = mypoint.Position;//默认位置为0
}
public void timer1_Tick(object sender, EventArgs e)
{
TimeSpan myts = lastTime - DateTime.Now;
time_lab.Text = myts.Hours + ":" + myts.Minutes + ":" + myts.Seconds;
if (myts.Equals(new TimeSpan(0,0,0)))
{
int tsum = 0;
for (int i = 0; i < mypoint.Count; i++)
{
tsum += sum[i];
}
timer1.Stop();
string strSql = "update 学生报名表 set score=" + tsum + " where sno='" + info[0] + "'";
if (con.updateDate(strSql) == true)
{
MessageBox.Show("您本次考试" + tsum + "分加油哦!!!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
Application.Exit();
}
}
} private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
/* dt = ds.Tables[0];
dr = dt.Rows[checkedListBox1.SelectedIndex];
quesstion_tb.Text = dr[1].ToString();*/
mypoint.Position = checkedListBox1.SelectedIndex;
showQuession();
}
private void showQuession()
{ dr = dt.Rows[mypoint.Position];//取行
quesstion_tb.Text = dr[1].ToString();//取字段
this.a_rab.Text = dr[2].ToString();
this.b_rab.Text = dr[3].ToString();
this.c_rab.Text = dr[4].ToString();
this.d_rab.Text = dr[5].ToString();
switch(checkinfo[mypoint.Position])
{
case 'a':
a_rab.Checked=true;
break;
case 'b':
b_rab.Checked=true;
break;
case 'c':
c_rab.Checked=true;
break;
case 'd':
d_rab.Checked=true;
break;
case 'e':
a_rab.Checked=false;
b_rab.Checked=false;
c_rab.Checked=false;
d_rab.Checked=false;
break;
}
this.Text = dr[6].ToString();
}
private void next_btn_Click(object sender, EventArgs e)
{
if (mypoint.Position <mypoint.Count-1)
{
mypoint.Position++;
}
else
{
mypoint.Position = 0;
}
showQuession();
this.checkedListBox1.SelectedIndex = mypoint.Position;
} private void pre_btn_Click(object sender, EventArgs e)
{
if (mypoint.Position > 0)
{
mypoint.Position--;
}
else
{
mypoint.Position = examNum-1;
}
showQuession();
this.checkedListBox1.SelectedIndex = mypoint.Position;
}
private void a_rab_CheckedChanged(object sender, EventArgs e)
{
this.Text = "";
if (a_rab.Checked == true)
{
checkinfo[mypoint.Position] = 'a';
}
if (b_rab.Checked == true)
{
checkinfo[mypoint.Position] = 'b';
}
if (c_rab.Checked == true)
{
checkinfo[mypoint.Position] = 'c'; }
if (d_rab.Checked == true)
{
checkinfo[mypoint.Position] = 'd';
}
if (dr[6].ToString().Equals(checkinfo[mypoint.Position].ToString().Trim()))
{
sum[mypoint.Position] =100/mypoint.Count;
}
else
{
sum[mypoint.Position] =0;
}
for (int i = 0; i < 20; i++)
{
this.Text +=sum[i].ToString();
}
leave_cb.Items.Clear();
for (int i = 0; i < mypoint.Count; i++)
{
if ((checkinfo[i].ToString().Trim().Equals("e")))
{
leave_cb.Items.Add("第" + (i + 1) + "题");
leave_lb.Text = "剩余题数:" + leave_cb.Items.Count;
}
}
}
private void leave_cb_SelectedIndexChanged(object sender, EventArgs e)
{
checkedListBox1.Focus();
checkedListBox1.SelectedItem = leave_cb.SelectedItem.ToString();
mypoint.Position = checkedListBox1.SelectedIndex;
showQuession();
}
private void cofirm_btn_Click(object sender, EventArgs e)
{
if (MessageBox.Show("您确定要结束答题吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)==DialogResult.Yes)
{
int tsum = 0; for (int i = 0; i < mypoint.Count; i++)
{
tsum += sum[i];
}
string strSql = "update 学生报名表 set score=" + tsum + " where sno='" + info[0] + "'";
if (con.updateDate(strSql) == true)
{
MessageBox.Show("您本次考试" + tsum + "分加油哦!!!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
Application.Exit();
}
}
}
}
}
你这样 我们很晕的