1、C#课程设计*学院课程设计说明书(2012/2013学年第一学期)课程名称 : 软件程序设计 题 目 : 备忘录软件设计 专业班级 : 学生姓名 : 放羊娃 学 号: 指导教师 : 设计周数 : 2周 2013年1月18日目录1、课程设计目的 32、课程设计内容 32.1软件分析 32.2软件流程及功能图 32.3数据库系统设计 42.4主要软件界面及程序实现 52.4.1登陆窗口设计及程序实现 52.4.2用户注册窗口设计及程序实现 72.4.3主界面窗口设计及程序实现 102.4.4添加备忘窗口设计及程序实现 142.4.5编辑备忘窗口设计及程序实现 162.4.6修改密码窗口 192.4
2、.7任务提醒界面设计及程序实现 212.4.8关于窗口设计及程序实现 233、课程设计总结或结论 244、参考文献 241、课程设计目的本课程设计是通信工程专业的一门软件实践专业基础课,旨在提高学生的软件编程能力。本设计将进一步加强学生对面向对象程序设计思想的理解,增强对C#程序语言的灵活运用。要求学生能结合数据库知识,网络通信技术,实现基本的应用软件,为以后从事相关行业打下软件编程基础。2、课程设计内容2.1软件分析本备忘录软件支持多用户,根据用户名和密码进入备忘录;登录用户可完成备忘信息的录入、修改和删除功能;支持登录提醒功能或其它提醒方式。2.2软件流程及功能图2.3数据库系统设计用户信
3、息表(UserInfo)列名数据类型长度是否为主键是否为空注释UserNameNchar10是否用户登录帐号UserPwdNchar10否否用户登录密码备忘录信息表(beiwanglu)列名数据类型长度是否为主键是否为空注释IDint是否编号namenvchar50否否用户登录帐号musicnvcharMax 否是提示音乐timedatetime否否提醒时间tesknvcharMax 否是备忘录信息2.4主要软件界面及程序实现2.4.1登陆窗口设计及程序实现using System;using System.Collections.Generic;using System.ComponentM
4、odel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace grbwl public partial class Form1 : Form public Form1() InitializeComponent(); public static string username = null; private void btnLogin_Click(object send
5、er, EventArgs e) string connString = Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|beiwanglu.mdf;Integrated Security=True;User Instance=True; SqlConnection conn = new SqlConnection(connString); conn.Open(); string sql = select * from UserInfo where UserName= + txtUsername.Text.Trim().ToLow
6、er() + and UserPwd= + txtPassword.Text.Trim() + ; SqlCommand cmd = new SqlCommand(sql, conn); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() username = this.txtUsername.Text.Trim(); frmMain frm = new frmMain(); frm.Show(); this.Hide(); else MessageBox.Show(用户名或密码错误, 出错了, MessageBoxButtons.OK,
7、 MessageBoxIcon.Error); conn.Close(); private void txtUsername_MouseHover(object sender, EventArgs e) txtUsername.Focus(); private void txtPassword_MouseMove(object sender, MouseEventArgs e) txtPassword.Focus(); private void btnReset_Click(object sender, EventArgs e) txtUsername.Text = ; txtPassword
8、.Text = ; private void button1_Click(object sender, EventArgs e) Form2 frm = new Form2 (); frm.Show(); 2.4.2用户注册窗口设计及程序实现namespace grbwl public partial class Form2 : Form public Form2() InitializeComponent(); private void button1_Click(object sender, EventArgs e) if (textBox1.Text.Trim() = | textBox
9、2.Text.Trim() = | textBox3.Text.Trim() = ) MessageBox.Show(请填写完整信息, 提示, 0); else if (textBox2.Text.Trim() != textBox3.Text.Trim() MessageBox.Show(两次输入密码不一致!, 提示, 0); else string connString = Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|beiwanglu.mdf;Integrated Security=True;Connect Timeou
10、t=30;User Instance=True; SqlConnection conn = new SqlConnection(connString); conn.Open(); SqlCommand cmd = new SqlCommand(, conn); cmd.CommandText = select * from UserInfo where UserName= + textBox1.Text.Trim() + ; if (null = cmd.ExecuteScalar() string sql = insert into UserInfo (UserName,UserPwd) v
11、alues ( + textBox1.Text.Trim() + , + textBox2.Text.Trim() + ) ; cmd.CommandText = sql; cmd.ExecuteNonQuery(); MessageBox.Show(新用户添加成功!, 提示, 0); else MessageBox.Show(已有 + textBox1.Text.Trim() + 用户存在,请选择其他名称, 提示, 0); conn.Close(); private void button2_Click(object sender, EventArgs e) textBox1.Text =
12、; textBox2.Text = ; textBox3.Text = ; private void button3_Click(object sender, EventArgs e) this.Hide(); 2.4.3主界面窗口设计及程序实现namespace grbwl public partial class frmMain : Form public frmMain() InitializeComponent(); public static string song = null; public static string rem = null; public static stri
13、ng bh = null; private void 修改密码ToolStripMenuItem_Click(object sender, EventArgs e) frmModify frm = new frmModify(); frm.Show(); private void 添加备忘ToolStripMenuItem_Click(object sender, EventArgs e) frmAdd frm = new frmAdd(); frm.Show(); private void toolStripButton2_Click(object sender, EventArgs e)
14、frmAdd frm = new frmAdd(); frm.Show(); private void 关于ToolStripMenuItem_Click(object sender, EventArgs e) frmAbout frm = new frmAbout(); DialogResult rst = frm.ShowDialog(); private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) Application.Exit(); private void frmMain_FormClosing(object
15、 sender, FormClosingEventArgs e) Application.Exit(); private void toolStripButton1_Click(object sender, EventArgs e) frmAdd frm = new frmAdd(); frm.Show(); private void 修改备忘ToolStripMenuItem_Click(object sender, EventArgs e) frmEdit frm = new frmEdit(); frm.Show(); private void menuStrip1_ItemClicke
16、d(object sender, ToolStripItemClickedEventArgs e) private void timer1_Tick(object sender, EventArgs e) / 查询提示时间,并做出响应 string connString = Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|beiwanglu.mdf;Integrated Security=True;User Instance=True; SqlConnection conn = new SqlConnection(connStri
17、ng); conn.Open(); string sql = select*from beiwang where name= + Form1.username + and time = + DateTime.Now.ToString(yyyy/MM/dd HH:mm:ss) + ; SqlCommand cmd = new SqlCommand(sql, conn); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() song = drmusic.ToString();/读取音乐 rem = drtesk.ToString();/读取任
18、务 bh = drid.ToString(); frmOn frm = new frmOn(); /timer1.Enabled = false; frm.Show(); /timer1.Enabled = true; conn.Close(); private void frmMain_Load(object sender, EventArgs e) BindData(); SqlDataAdapter da = new SqlDataAdapter(); DataSet ds = new DataSet(); / / 数据绑定 / void BindData() string sql =
19、select id as 编号, time as 提示时间,tesk as 提示内容 ,music as 提示音 from beiwang where name= + Form1.username + ; SqlConnection conn = new SqlConnection(OperDB.ConnString); conn.Open(); SqlCommand cmd = new SqlCommand(sql, conn); da.SelectCommand = cmd; da.Fill(ds); /dataGridView1.DataSource = ds.Tables0; conn
20、.Close(); private void toolStripButton3_Click(object sender, EventArgs e) frmEdit frm = new frmEdit(); frm.Show(); 2.4.4添加备忘窗口设计及程序实现namespace grbwl public partial class frmAdd : Form public frmAdd() InitializeComponent(); public static string song = null; public static string rem = null; public sta
21、tic string bh = null; private void button1_Click(object sender, EventArgs e) if (textBox1.Text = ) MessageBox.Show(请设置一个提示信息!); return; else string connString = Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|beiwanglu.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True; SqlCo
22、nnection conn = new SqlConnection(connString); conn.Open(); string sql = insert into beiwang (name,time,tesk,music) values ( + Form1.username + , + dateTimePicker1.Value + , + textBox1.Text + , + textBox2.Text + ); SqlCommand cmd = new SqlCommand(sql, conn); cmd.CommandText = sql; cmd.ExecuteNonQuer
23、y(); MessageBox.Show(任务添加成功!, 提示, 0); private void button3_Click(object sender, EventArgs e) /选择音乐路径 OpenFileDialog open_music = new OpenFileDialog(); open_music.Title = choose a music; open_music.Filter = MP3文件(*.mp3)|*.mp3|Audio文件(*.avi)|*.avi|WAV文件(*.wav)|*.wav|所有文件 (*.*)|*.*; if (open_music.Show
24、Dialog() = DialogResult.OK) textBox2.Text = open_music.FileName; song = textBox2.Text.Trim(); private void button2_Click(object sender, EventArgs e) this.Close(); private void timer1_Tick_2(object sender, EventArgs e) this.label6.Text = DateTime.Now.ToString(yyyy/MM/dd HH:mm:ss); private void timer1
25、_Tick_1(object sender, EventArgs e) this.label6.Text = DateTime.Now.ToString(yyyy/MM/dd HH:mm:ss); 2.4.5编辑备忘窗口设计及程序实现namespace grbwl public partial class frmEdit : Form public frmEdit() InitializeComponent(); private void frmEdit_Load(object sender, EventArgs e) BindData(); SqlDataAdapter da = new S
26、qlDataAdapter(); DataSet ds = new DataSet(); void BindData() string sql=select id as 编号,time as 提示时间,tesk as 提示内容,music as 提示音乐 from beiwang where name =+Form1.username +; SqlConnection conn = new SqlConnection(OperDB.ConnString); conn.Open(); SqlCommand cmd = new SqlCommand(sql,conn); da.SelectComm
27、and = cmd; da.Fill(ds); dataGridView1.DataSource = ds.Tables0; conn.Close(); private void button1_Click(object sender, EventArgs e) SqlCommandBuilder cb = new SqlCommandBuilder(da); da.Update(ds); MessageBox.Show(修改成功!); private void button2_Click(object sender, EventArgs e) DialogResult dlResult =
28、MessageBox.Show(this, 确定要删除这些信息吗?, 请确认!, MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dlResult = DialogResult.Yes) int j = dataGridView1.SelectedRows.Count; int l = new intj; int i; for (i = 0; i j; i+) li = dataGridView1.SelectedRowsi.Index; int k = 0; while (k j) ds.Tables0.Rowslk.Delete(); k+; SqlCommandBuilder cb = new SqlCommandBuilder(da); da.Update(ds); private void button3_Click(object sender, EventArgs e) this.Hide(); private void dataGridView1_CellContentClick(object sender, DataGrid
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1