C#实训报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
淮安信息职业技术学院
C#
实
训
报
告
姓名:李欣
班级:311020
学号:31102008
院系:计通院
专业:软件专业
目录
一、系统需求.............................................................. 错误!未定义书签。
1.1实验目标 (3)
1.2可行性分析 (3)
1.3需求性分析 (3)
二、主界面设计 (4)
2.1登录界面 (4)
2.2主界面 (5)
2.3查询界面 (6)
2.4新增界面 (7)
2.5修改管理员密码界面 (8)
2.6报表界面 (8)
三、功能模块的实现 (10)
四、实训思考与总结 (15)
4.1实训中遇到的问题 (15)
4.2项目的不足之处 (16)
4.3实训总结 (18)
一、系统需求
1.1实验目标
做一个项目“考试管理系统”,以实现对考试成绩、学生和教师信息的管理。
1.2可行性分析
本项目是依据管理员、教师、学生三种不同身份进入“考试系统”,从而使用不同权限的管理和设置;可以实现报表功能;还可以打包安装。
1.3需求性分析
每个学校的学校网站上都会有对学生和教师的信息管理,使得学生和教师可以方便的查询自己的信息。而本项目就是模仿学校网站系统做的,在这个项目中有三种身份,每种身份都有自己的权限。管理员进入系统可以增加教师和学生的人数;教师进入系统可以对学生的成绩进行修改;学生进入系统可以查看自己的以及其他人的基本信息和课程成绩;每种身份都可以对自己的密码进行修改,也可以挂机离开,保护自己的信息不被别人盗取或更改。
二、主界面设计
本项目主要有登陆界面、主界面、查询教师和学生界面、新增教师和
学生界面、修改管理员密码界面、挂机离开界面、报表界面
2.1登录界面:建一个窗体,放上label、button、textbox控件。
界面如下:
2.2主界面:首先通过容器SplitContainer使界面分成两部分,右上侧方则添加statusStrip(菜单栏),显示每项功能的名称,并且以实现这些功能;在左侧添加toolStrip(工具栏),主要是对相关重要信息的展现,显示登录者的身份,并显示时间,以方便登录者有时间概念;中下侧则放入一个PictureBox控件,再插入一张图片,使界面显得美观一些。
界面如下:
2.3查询界面:建一个窗体,放上label、button、textbox控件。内容显示的是数据库里的内容。
下面是查询界面中的其中的教师查询:
2.4新增界面:添加TabControl控件,可以实现以下效果。
2.5修改管理员密码界面、挂机离开界面:这两个界面控件都一样。界面如下:
2.6报表界面
三、功能模块的实现
3.1通过三层架构完成对数据库数据的显示和修改,本项目主要功能有:
管理员、教师、学生可以查看信息,并可以进行模糊查询操作管理员、教师、学生可以挂机离开
管理员、教师、学生可以修改各自的登录密码
教师可以删除学生的课程成绩
管理员可以增加和删除教师、学生
在主界面可以显示用户名和登录时间
3.2涉及的表
3.2.1表Admin
3.2.2表Teacher
3.2.3表Student
3.2.4表Grade
3.3实现各功能具体的代码
3.3.1模糊查询功能的代码:
private void btn_SeachT_Click(object sender, EventArgs e)
{
if (txtSeachTeac.Text.Trim() != "")
{
PublicData.@t = txtSeachTeac.Text;
dgv_Teacher.DataSource=BLL.Teacher.SelectTeacher().Tables[0];
}
else
{
dgv_Teacher.DataSource=BLL.Teacher.GetAllTeacher().Tables[0];
}
}
3.3.2挂机离开
创建挂机密码:
public partial class Frm离开密码: Form
{
{
InitializeComponent();
}
private void bt_确定_Click(object sender, EventArgs e)
{
if (check())
{
PublicData.leavepassword= tb_密码.Text;
this.Close();
}
}
private bool check()
{
if (tb_密码.Text == "")
{
MessageBox.Show("请输入密码", "输入提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
this.tb_密码.Focus();
return false;
}
else if (tb_确认密码.Text == "")
{
MessageBox.Show("请输入确认密码", "输入提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
this.tb_确认密码.Focus();
return false;
}
else if (tb_密码.Text != tb_确认密码.Text)
{
MessageBox.Show("两次密码输入不一致", "输入提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
this.tb_确认密码.Focus();
return false;
}
else
{
return true;
}
离开钥匙:
public partial class Frm离开钥匙: Form
{