C#课程设计.docx
- 文档编号:28754588
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:29
- 大小:116.82KB
C#课程设计.docx
《C#课程设计.docx》由会员分享,可在线阅读,更多相关《C#课程设计.docx(29页珍藏版)》请在冰豆网上搜索。
C#课程设计
**学院
课程设计说明书
(2012/2013学年第一学期)
课程名称:
软件程序设计
题目:
备忘录软件设计
专业班级:
学生姓名:
放羊娃
学号:
指导教师:
设计周数:
2周
2013年1月18日
目录
1、课程设计目的3
2、课程设计内容3
2.1软件分析3
2.2软件流程及功能图3
2.3数据库系统设计4
2.4主要软件界面及程序实现5
2.4.1登陆窗口设计及程序实现5
2.4.2用户注册窗口设计及程序实现7
2.4.3主界面窗口设计及程序实现10
2.4.4添加备忘窗口设计及程序实现14
2.4.5编辑备忘窗口设计及程序实现16
2.4.6修改密码窗口19
2.4.7任务提醒界面设计及程序实现21
2.4.8关于窗口设计及程序实现23
3、课程设计总结或结论24
4、参考文献24
1、课程设计目的
本课程设计是通信工程专业的一门软件实践专业基础课,旨在提高学生的软件编程能力。
本设计将进一步加强学生对面向对象程序设计思想的理解,增强对C#程序语言的灵活运用。
要求学生能结合数据库知识,网络通信技术,实现基本的应用软件,为以后从事相关行业打下软件编程基础。
2、课程设计内容
2.1软件分析
本备忘录软件支持多用户,根据用户名和密码进入备忘录;登录用户可完成备忘信息的录入、修改和删除功能;支持登录提醒功能或其它提醒方式。
2.2软件流程及功能图
2.3数据库系统设计
用户信息表(UserInfo)
列名
数据类型
长度
是否为主键
是否为空
注释
UserName
Nchar
10
是
否
用户登录帐号
UserPwd
Nchar
10
否
否
用户登录密码
备忘录信息表(beiwanglu)
列名
数据类型
长度
是否为主键
是否为空
注释
ID
int
是
否
编号
name
nvchar
50
否
否
用户登录帐号
music
nvchar
Max
否
是
提示音乐
time
datetime
否
否
提醒时间
tesk
nvchar
Max
否
是
备忘录信息
2.4主要软件界面及程序实现
2.4.1登陆窗口设计及程序实现
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Windows.Forms;
usingSystem.Data.SqlClient;
namespacegrbwl
{
publicpartialclassForm1:
Form
{
publicForm1()
{
InitializeComponent();
}
publicstaticstringusername=null;
privatevoidbtnLogin_Click(objectsender,EventArgse)
{
stringconnString=@"DataSource=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\beiwanglu.mdf;IntegratedSecurity=True;UserInstance=True";
SqlConnectionconn=newSqlConnection(connString);
conn.Open();
stringsql="select*fromUserInfowhereUserName='"+txtUsername.Text.Trim().ToLower()+"'andUserPwd='"+txtPassword.Text.Trim()+"'";
SqlCommandcmd=newSqlCommand(sql,conn);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.Read())
{
username=this.txtUsername.Text.Trim();
frmMainfrm=newfrmMain();
frm.Show();
this.Hide();
}
else
{
MessageBox.Show("用户名或密码错误","出错了",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
conn.Close();
}
privatevoidtxtUsername_MouseHover(objectsender,EventArgse)
{
txtUsername.Focus();
}
privatevoidtxtPassword_MouseMove(objectsender,MouseEventArgse)
{
txtPassword.Focus();
}
privatevoidbtnReset_Click(objectsender,EventArgse)
{
txtUsername.Text="";
txtPassword.Text="";
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
Form2frm=newForm2();
frm.Show();
}
}
}
2.4.2用户注册窗口设计及程序实现
namespacegrbwl
{
publicpartialclassForm2:
Form
{
publicForm2()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text.Trim()==""||textBox2.Text.Trim()==""||textBox3.Text.Trim()=="")
{
MessageBox.Show("请填写完整信息","提示",0);
}
else
{
if(textBox2.Text.Trim()!
=textBox3.Text.Trim())
{
MessageBox.Show("两次输入密码不一致!
","提示",0);
}
else
{
stringconnString=@"DataSource=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\beiwanglu.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstance=True";
SqlConnectionconn=newSqlConnection(connString);
conn.Open();
SqlCommandcmd=newSqlCommand("",conn);
cmd.CommandText="select*fromUserInfowhereUserName='"+textBox1.Text.Trim()+"'";
if(null==cmd.ExecuteScalar())
{
stringsql="insertintoUserInfo(UserName,UserPwd)values('"+textBox1.Text.Trim()+"','"+textBox2.Text.Trim()+"')";
cmd.CommandText=sql;
cmd.ExecuteNonQuery();
MessageBox.Show("新用户添加成功!
","提示",0);
}
else
MessageBox.Show("已有"+textBox1.Text.Trim()+"用户存在,请选择其他名称","提示",0);
conn.Close();
}
}
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
textBox1.Text="";
textBox2.Text="";
textBox3.Text="";
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
this.Hide();
}
}
}
2.4.3主界面窗口设计及程序实现
namespacegrbwl
{
publicpartialclassfrmMain:
Form
{
publicfrmMain()
{
InitializeComponent();
}
publicstaticstringsong=null;
publicstaticstringrem=null;
publicstaticstringbh=null;
privatevoid修改密码ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmModifyfrm=newfrmModify();
frm.Show();
}
privatevoid添加备忘ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmAddfrm=newfrmAdd();
frm.Show();
}
privatevoidtoolStripButton2_Click(objectsender,EventArgse)
{
frmAddfrm=newfrmAdd();
frm.Show();
}
privatevoid关于ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmAboutfrm=newfrmAbout();
DialogResultrst=frm.ShowDialog();
}
privatevoid退出ToolStripMenuItem_Click(objectsender,EventArgse)
{
Application.Exit();
}
privatevoidfrmMain_FormClosing(objectsender,FormClosingEventArgse)
{
Application.Exit();
}
privatevoidtoolStripButton1_Click(objectsender,EventArgse)
{
frmAddfrm=newfrmAdd();
frm.Show();
}
privatevoid修改备忘ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmEditfrm=newfrmEdit();
frm.Show();
}
privatevoidmenuStrip1_ItemClicked(objectsender,ToolStripItemClickedEventArgse)
{
}
privatevoidtimer1_Tick(objectsender,EventArgse)
{
//查询提示时间,并做出响应
stringconnString=@"DataSource=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\beiwanglu.mdf;IntegratedSecurity=True;UserInstance=True";
SqlConnectionconn=newSqlConnection(connString);
conn.Open();
stringsql="select*frombeiwangwherename='"+Form1.username+"'andtime='"+DateTime.Now.ToString("yyyy/MM/ddHH:
mm:
ss")+"'";
SqlCommandcmd=newSqlCommand(sql,conn);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.Read())
{
song=dr["music"].ToString();//读取音乐
rem=dr["tesk"].ToString();//读取任务
bh=dr["id"].ToString();
frmOnfrm=newfrmOn();
//timer1.Enabled=false;
frm.Show();
//timer1.Enabled=true;
}
conn.Close();
}
privatevoidfrmMain_Load(objectsender,EventArgse)
{
BindData();
}
SqlDataAdapterda=newSqlDataAdapter();
DataSetds=newDataSet();
///
///数据绑定
///
voidBindData()
{
stringsql="selectidas编号,timeas提示时间,teskas提示内容,musicas提示音frombeiwangwherename='"+Form1.username+"'";
SqlConnectionconn=newSqlConnection(OperDB.ConnString);
conn.Open();
SqlCommandcmd=newSqlCommand(sql,conn);
da.SelectCommand=cmd;
da.Fill(ds);
//dataGridView1.DataSource=ds.Tables[0];
conn.Close();
}
privatevoidtoolStripButton3_Click(objectsender,EventArgse)
{
frmEditfrm=newfrmEdit();
frm.Show();
}
}
}
2.4.4添加备忘窗口设计及程序实现
namespacegrbwl
{
publicpartialclassfrmAdd:
Form
{
publicfrmAdd()
{
InitializeComponent();
}
publicstaticstringsong=null;
publicstaticstringrem=null;
publicstaticstringbh=null;
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text=="")
{
MessageBox.Show("请设置一个提示信息!
");
return;
}
else
{
stringconnString=@"DataSource=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\beiwanglu.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstance=True";
SqlConnectionconn=newSqlConnection(connString);
conn.Open();
stringsql="insertintobeiwang(name,time,tesk,music)values('"+Form1.username+"','"+dateTimePicker1.Value+"','"+textBox1.Text+"','"+textBox2.Text+"')";
SqlCommandcmd=newSqlCommand(sql,conn);
cmd.CommandText=sql;
cmd.ExecuteNonQuery();
MessageBox.Show("任务添加成功!
","提示",0);
}
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
//选择音乐路径
OpenFileDialogopen_music=newOpenFileDialog();
open_music.Title="chooseamusic";
open_music.Filter="MP3文件(*.mp3)|*.mp3|Audio文件(*.avi)|*.avi|WAV文件(*.wav)|*.wav|所有文件(*.*)|*.*";
if(open_music.ShowDialog()==DialogResult.OK)
{
textBox2.Text=open_music.FileName;
song=textBox2.Text.Trim();
}
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
this.Close();
}
privatevoidtimer1_Tick_2(objectsender,EventArgse)
{
this.label6.Text=DateTime.Now.ToString("yyyy/MM/ddHH:
mm:
ss");
}
privatevoidtimer1_Tick_1(objectsender,EventArgse)
{
this.label6.Text=DateTime.Now.ToString("yyyy/MM/ddHH:
mm:
ss");
}
}
}
2.4.5编辑备忘窗口设计及程序实现
namespacegrbwl
{
publicpartialclassfrmEdit:
Form
{
publicfrmEdit()
{
InitializeComponent();
}
privatevoidfrmEdit_Load(objectsender,EventArgse)
{
BindData();
}
SqlDataAdapterda=newSqlDataAdapter();
DataSetds=newDataSet();
voidBindData()
{
stringsql="selectidas编号,timeas提示时间,teskas提示内容,musicas提示音乐frombeiwangwherename='"+Form1.username+"'";
SqlConnectionconn=newSqlConnection(OperDB.ConnString);
conn.Open();
SqlCommandcmd=newSqlCommand(sql,conn);
da.SelectCommand=cmd;
da.Fill(ds);
dataGridView1.DataSource=ds.Tables[0];
conn.Close();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
SqlCommandBuildercb=newSqlCommandBuilder(da);
da.Update(ds);
MessageBox.Show("修改成功!
");
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
DialogResultdlResult=MessageBox.Show(this,"确定要删除这些信息吗?
","请确认!
",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
if(dlResult==DialogResult.Yes)
{
intj=dataGridView1.SelectedRows.Count;
int[]l=newint[j];
inti;
for(i=0;i { l[i]=dataGridView1.SelectedRows[i].Index; } intk=0; while(k { ds.Tables[0].Rows[l[k]].Delete(); k++; } SqlCommandBuildercb=newSqlCommandBuilder(da); da.Update(ds); } } privatevoidbutton3_Click(objectsender,EventArgse) { this.Hide(); } privatevoiddataGridView1_CellContentClick(objectsender,DataGrid
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 课程设计