您的位置:首页 > 其它

简单的登录页面

2015-12-02 14:47 204 查看
1.设计思路

(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
5、团队总结

这次设计登录窗体到实现,经历一个下午,原本很简单的一个登录窗体,分工之后,又出现变量的设定不一致的问题,然后就是开始设计的时候,讨论大约20多分钟,我们才决定为了以后的程序的发展空间,将页面和业务逻辑分离开来,毕竟学了设计模式好久了。团队缺少一个最为重要的设计师,这样就不会出现意见不一致的情况,以至于浪费时间。

6、对于作业的总结

注册页面需要“验证码”的存在,这是一点不足,第二就是注册的时候需要管理的同意,不可能谁想注册就注册,这点实现也没思路,难道传参?但是传参给谁?所以,做的这个登录页面还行,但注册页面就差强人意。

7、本次团队人员

队长:1021关高磊--写业务逻辑类、博客,

队员学号后四位:1061;队员姓名:李赞启

队员学号后四位:1014;队员姓名:范晓田

队员学号后四位:1051;队员姓名:李提

队员学号后四位:1071;队员姓名:刘远龙

队员学号后四位:6020;队员姓名:高丁松

队员学号后四位:1121;队员姓名:熊广义
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: