简单的登录页面
2015-12-02 14:47
204 查看
1.设计思路
(1)思考应该尽量简约,初步想达到什么效果,添加控件。
(2)创建windows窗体设计窗体,有登录页面就有注册页面,所以做两个窗体,为了方便以后,提前定义变量。
(3)最大降低逻辑的耦合,另外写类。
(4)我们几个代码连接起来,综合,测试。
2、代码如下
界面逻辑
业务逻辑:新建业务类
3、代码实现
4、耗时分析
5、团队总结
这次设计登录窗体到实现,经历一个下午,原本很简单的一个登录窗体,分工之后,又出现变量的设定不一致的问题,然后就是开始设计的时候,讨论大约20多分钟,我们才决定为了以后的程序的发展空间,将页面和业务逻辑分离开来,毕竟学了设计模式好久了。团队缺少一个最为重要的设计师,这样就不会出现意见不一致的情况,以至于浪费时间。
6、对于作业的总结
注册页面需要“验证码”的存在,这是一点不足,第二就是注册的时候需要管理的同意,不可能谁想注册就注册,这点实现也没思路,难道传参?但是传参给谁?所以,做的这个登录页面还行,但注册页面就差强人意。
7、本次团队人员
队长:1021关高磊--写业务逻辑类、博客,
队员学号后四位:1061;队员姓名:李赞启
队员学号后四位:1014;队员姓名:范晓田
队员学号后四位:1051;队员姓名:李提
队员学号后四位:1071;队员姓名:刘远龙
队员学号后四位:6020;队员姓名:高丁松
队员学号后四位:1121;队员姓名:熊广义
(1)思考应该尽量简约,初步想达到什么效果,添加控件。
(2)创建windows窗体设计窗体,有登录页面就有注册页面,所以做两个窗体,为了方便以后,提前定义变量。
(3)最大降低逻辑的耦合,另外写类。
(4)我们几个代码连接起来,综合,测试。
2、代码如下
界面逻辑
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace ruanjian { public partial class Form1 : Form { public Form1() { InitializeComponent(); } dbcon dd = new dbcon(); private void button1_Click(object sender, EventArgs e) { dd.db(); string userid = textBox1.Text; string pw = textBox2.Text; string lab = label3.Text; dd.denglu(userid,pw,lab); label3.Text = dd.wuyu; } private void button2_Click(object sender, EventArgs e) { Form2 ff = new Form2(); ff.ShowDialog(); } } }
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace ruanjian { public partial class Form2 : Form { public Form2() { InitializeComponent(); } dbcon dd = new dbcon(); private void button1_Click(object sender, EventArgs e) { dd.db(); //调用写的dbcon类的方法,传参。 string name = textBox1.Text; string pass = textBox2.Text; string insertInfo = "insert into user_info(userName,password) values('"+name+"','"+pass+"')"; dd.dbinsert(insertInfo); ///注册完,就可以直接登录 this.Close(); } private void button2_Click(object sender, EventArgs e) { textBox1.Text = ""; textBox2.Text = ""; } } }
业务逻辑:新建业务类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Windows.Forms; using System.Data.SqlClient; namespace ruanjian { class dbcon { string ss = "Data Source=MBENBEN-PC\\SQLEXPRESS;Initial Catalog=repair;Integrated Security=True"; public SqlConnection conn = new SqlConnection(); public SqlDataAdapter sda = new SqlDataAdapter(); public SqlCommand cmd = new SqlCommand(); public DataSet ds = new DataSet(); public DataTable da = new DataTable(); public SqlDataReader sdr; public string wuyu; //连接 public void db() { try { conn= new SqlConnection(ss); } catch(Exception e) { MessageBox.Show("亲,你的数据链接有问题"+e.ToString()); } } //注册插入 public void dbinsert(string insetinfo) { conn.Open(); SqlCommand cmd = new SqlCommand(insetinfo,conn); try { cmd.ExecuteNonQuery(); MessageBox.Show("已经注册,请直接登录"); } catch(Exception e) { MessageBox.Show("亲,注册失败"+e.ToString()); } conn.Close(); } //登录 public void denglu( string haha,string hehe,string lab) { conn.Open(); string ceshi = "select count(*) from user_info where userName='" + haha + "'"; SqlCommand cnm = new SqlCommand(ceshi,conn); int n = (int)cnm.ExecuteScalar(); if (!(n > 0)) { MessageBox.Show("此用户不存在"); } else { string ceshimima = "select count(*) from user_info where password='" + hehe + "'"; SqlCommand cmd = new SqlCommand(ceshimima,conn); int x = (int)cmd.ExecuteScalar(); if (x > 0) { lab="登陆成功"; wuyu = lab; } else { MessageBox.Show("密码错误,请重试"); } } } } }
3、代码实现
4、耗时分析
PSP:第五次作业 | Personal Software Process Stages | Timer(h) |
Planning: | 计划 | 4 |
.Estimate: | 估计的时间 | 3 |
Development: | 开发 | 3 |
.Analysis: | 需求分析 | 0.5 |
.Design Spec: | 生成设计文档 | 0.8 |
.Coding Standard | 代码规范 | o.3 |
.Desing | 具体设计 | 0.6 |
.Coding | 具体代码 | 0.6 |
.Code Review | 代码复审 | 0.1 |
.Text | 测试 | 0.1 |
Repotring | 报告 | 1 |
.Test Report | 测试报告 | 0.2 |
.Size Measurement | 计算机工作量 | 0.7 |
.Postmortem | 事后总结 | 0.1 |
这次设计登录窗体到实现,经历一个下午,原本很简单的一个登录窗体,分工之后,又出现变量的设定不一致的问题,然后就是开始设计的时候,讨论大约20多分钟,我们才决定为了以后的程序的发展空间,将页面和业务逻辑分离开来,毕竟学了设计模式好久了。团队缺少一个最为重要的设计师,这样就不会出现意见不一致的情况,以至于浪费时间。
6、对于作业的总结
注册页面需要“验证码”的存在,这是一点不足,第二就是注册的时候需要管理的同意,不可能谁想注册就注册,这点实现也没思路,难道传参?但是传参给谁?所以,做的这个登录页面还行,但注册页面就差强人意。
7、本次团队人员
队长:1021关高磊--写业务逻辑类、博客,
队员学号后四位:1061;队员姓名:李赞启
队员学号后四位:1014;队员姓名:范晓田
队员学号后四位:1051;队员姓名:李提
队员学号后四位:1071;队员姓名:刘远龙
队员学号后四位:6020;队员姓名:高丁松
队员学号后四位:1121;队员姓名:熊广义
相关文章推荐
- SWFObject文件上传使用记录
- 【zookeeper】错误处理机制
- Golang logger日志库
- Android IPC 机制【2】--- Messenger[2]
- JAVA语言的发展方向
- reactjs做组件时html元素重叠的方法
- JDK8新特性
- npm install -g react-native-cli 提示npm ERR!
- 乱码问题追踪php
- oracle 运行./runInstaller出错
- Java for Web学习笔记(十一):JSP(1)何为JSP
- Android SQLite增删改查的语句
- Android初级程序员需要掌握的知识
- leetcode : Clone Graph
- Spring之FactoryBean
- P53 T3
- java学习笔记-设计模式4(抽象工厂模式)
- sql 处理以字符隔开的字符串(类似split)
- MySQL Study之--Linux下安装MySQL workbench工具
- Ubuntu终端提示符设置