标签:
为以后多个功能界面考虑,新增一个主界面:
主界面如下:
主界面(VIPMain.cs)详细代码如下:
1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Threading.Tasks; 9 using System.Windows.Forms; 10 11 namespace 会员管理系统 12 { 13 public partial class VIPMain : Form 14 { 15 public VIPMain() 16 { 17 InitializeComponent(); 18 } 19 20 private void btnVIPManager_Click(object sender, EventArgs e) 21 { 22 VIPManager vm = new VIPManager(); 23 vm.Show(); 24 this.Hide(); 25 } 26 27 private void btnVIPLogin_Click(object sender, EventArgs e) 28 { 29 VIPLogin vp = new VIPLogin(); 30 vp.Show(); 31 this.Hide(); 32 } 33 34 private void btnClose_Click(object sender, EventArgs e) 35 { 36 //彻底的退出 37 System.Environment.Exit(0); 38 } 39 40 private void btnPwdChange_Click(object sender, EventArgs e) 41 { 42 VIPPwdChange vpc = new VIPPwdChange(); 43 vpc.Show(); 44 this.Hide(); 45 } 46 } 47 }
创建个修改密码的界面:
修改密码界面如下:
为了方便操作,设置启用了该窗体的快捷键:
修改密码界面(VIPPwdChange.cs)详细代码如下:
1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Threading.Tasks; 9 using System.Windows.Forms; 10 using System.Configuration; 11 using System.Data.SqlClient; 12 13 namespace 会员管理系统 14 { 15 public partial class VIPPwdChange : Form 16 { 17 public VIPPwdChange() 18 { 19 InitializeComponent(); 20 } 21 22 private void btnBack_Click(object sender, EventArgs e) 23 { 24 VIPMain vmain = new VIPMain(); 25 vmain.Show(); 26 this.Hide(); 27 } 28 29 private void btnOk_Click(object sender, EventArgs e) 30 { 31 //假如文本框有空的则提示 32 if (txtName.Text == "" || txtOldPwd.Text == "" || txtNewPwd.Text == "" || txtNewPwdConfirm.Text == "") 33 { 34 MessageBox.Show("信息不完整,请确认完整后再提交!"); 35 return; 36 } 37 //连接数据库字符串 38 string connstr = ConfigurationManager.ConnectionStrings["str"].ConnectionString; 39 //创建连接数据库对象 40 SqlConnection conn = new SqlConnection(connstr); 41 //查询VipAccount表语句(即查询密码) 42 string sql = string.Format("select vUserPwd from VipAccount where vUserName=‘" + txtName.Text + "‘"); 43 //创建操作数据库对象 44 SqlCommand cmd = new SqlCommand(sql,conn); 45 //打开数据库 46 conn.Open(); 47 //创建SqlDataReader对象并执行cmd.ExecuteReader()方法(该方法执行查询VipAccount表语句) 48 SqlDataReader sdr = cmd.ExecuteReader(); 49 //判断是否有下一条数据并把游标定位在下一条数据 50 if (sdr.Read()) 51 { 52 //txtOldPwd文本框的值是否等于sdr的第一列数据 53 if (txtOldPwd.Text == sdr.GetString(0).Trim()) 54 { 55 //判断两次输入的新密码是否一致 56 if (txtNewPwd.Text != txtNewPwdConfirm.Text) 57 { 58 MessageBox.Show("两次输入的新密码不一样,请重新输入"); 59 //清空新密码文本框 60 txtNewPwd.Text = ""; 61 txtNewPwdConfirm.Text = ""; 62 return; 63 } 64 else 65 { 66 //关闭sdr 67 sdr.Close(); 68 //更新VipAccount表语句 69 string sqlupdate =string.Format( "update VipAccount set vUserPwd=‘{0}‘ where vUserName=‘{1}‘",txtNewPwd.Text,txtName.Text); 70 //创建操作数据库对象 71 SqlCommand cmdup = new SqlCommand(sqlupdate,conn); 72 //执行cmdup.ExecuteNonQuery()方法(该方法执行更新VipAccount表语句),并判断返回的值是否为0 73 if (cmdup.ExecuteNonQuery() == 0) 74 { 75 MessageBox.Show("未知异常"); 76 return; 77 } 78 else 79 { 80 MessageBox.Show("密码修改成功"); 81 } 82 } 83 } 84 else 85 { 86 MessageBox.Show("旧密码错误,或者不能为空"); 87 txtOldPwd.Text = ""; 88 txtNewPwd.Text = ""; 89 txtNewPwdConfirm.Text = ""; 90 return; 91 } 92 } 93 //关闭数据库连接 94 conn.Close(); 95 } 96 97 //设置快捷键 98 private void VIPPwdChange_KeyDown(object sender, KeyEventArgs e) 99 { 100 //F5确定 101 if(e.KeyCode==Keys.F5) 102 { 103 btnOk_Click(null,null); 104 } 105 //ESC返回 106 else if (e.KeyCode == Keys.Escape) 107 { 108 btnBack_Click(null,null); 109 } 110 } 111 112 //当登录窗体为活动窗体时 113 private void VIPPwdChange_Activated(object sender, EventArgs e) 114 { 115 //设置文本框txtName获得焦点 116 txtName.Focus(); 117 } 118 119 //获取文本框txtName的快捷键 120 private void txtName_KeyUp(object sender, KeyEventArgs e) 121 { 122 if (e.KeyCode == Keys.Enter) 123 { 124 txtOldPwd.Focus(); 125 txtOldPwd.SelectAll(); 126 } 127 } 128 //获取文本框txtOldPwd的快捷键 129 private void txtOldPwd_KeyUp(object sender, KeyEventArgs e) 130 { 131 if (e.KeyCode == Keys.Enter) 132 { 133 txtNewPwd.Focus(); 134 txtNewPwd.SelectAll(); 135 } 136 } 137 //获取文本框txtNewPwd的快捷键 138 private void txtNewPwd_KeyUp(object sender, KeyEventArgs e) 139 { 140 if (e.KeyCode == Keys.Enter) 141 { 142 txtNewPwdConfirm.Focus(); 143 txtNewPwdConfirm.SelectAll(); 144 } 145 } 146 //获取文本框txtNewPwdConfirm的快捷键 147 private void txtNewPwdConfirm_KeyUp(object sender, KeyEventArgs e) 148 { 149 if (e.KeyCode == Keys.Enter) 150 { 151 btnOk_Click(null, null); 152 } 153 } 154 155 156 } 157 }
登录界面也增加了快捷键操作:
登录界面(VIPLogin.cs)详细代码如下:
1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Configuration; 5 using System.Data; 6 using System.Drawing; 7 using System.Linq; 8 using System.Text; 9 using System.Threading.Tasks; 10 using System.Windows.Forms; 11 using System.Data.SqlClient; 12 13 namespace 会员管理系统 14 { 15 public partial class VIPLogin : Form 16 { 17 public VIPLogin() 18 { 19 InitializeComponent(); 20 } 21 //用于连接配置文件App.config 22 string connStr = ConfigurationManager.ConnectionStrings["str"].ConnectionString; 23 //登录按钮 24 private void btnLogin_Click(object sender, EventArgs e) 25 { 26 //连接数据库语句 27 using(SqlConnection con=new SqlConnection(connStr)) 28 { 29 //操作数据库语句 30 string sql = "select vuserpwd from vipaccount where vUserName=‘" + txtName.Text + "‘"; 31 using(SqlCommand cmd=new SqlCommand(sql,con)) 32 { 33 //打开数据库 34 con.Open(); 35 //使用 SqlDataReader 来 读取数据库 36 using (SqlDataReader sdr = cmd.ExecuteReader()) 37 { 38 //SqlDataReader 在数据库中为 从第1条数据开始 一条一条往下读 39 if (sdr.Read()) //如果读取账户成功(文本框中的用户名在数据库中存在) 40 { 41 //则将第1条 密码 赋给 字符串pwd ,并且依次往后读取 所有的密码 42 //Trim()方法为移除字符串前后的空白 43 string pwd = sdr.GetString(0).Trim(); 44 //如果 文本框中输入的密码 ==数据库中的密码 45 if (pwd == txtPwd.Text) 46 { 47 //说明在该账户下 密码正确, 系统登录成功 48 MessageBox.Show("登录成功,正在进入主界面......"); 49 //***************新增代码*************** 50 //创建新的会员资料管理界面窗体并显示,同时把登录界面隐藏 51 //VIPManager vm=new VIPManager(); 52 VIPMain vmain = new VIPMain(); 53 vmain.Show(); 54 this.Hide(); 55 //***************新增代码*************** 56 } 57 else 58 { 59 //密码错误 60 MessageBox.Show("密码错误,请重新输入"); 61 txtPwd.Text = ""; 62 } 63 } 64 else 65 { 66 //用户名错误 67 MessageBox.Show("用户名错误,请重新输入!"); 68 txtName.Text = ""; 69 } 70 } 71 } 72 } 73 } 74 75 //设置快捷键 76 private void VIPLogin_KeyDown(object sender, KeyEventArgs e) 77 { 78 //如果按下ESC键 79 if (e.KeyCode == Keys.Escape) 80 { 81 //关闭窗体 82 this.Close(); 83 } 84 //如果按下F5键 85 else if (e.KeyCode == Keys.F5) 86 { 87 //调用登录按钮单击事件 88 this.btnLogin_Click(null,null); 89 } 90 } 91 92 //关闭 93 private void btnClose_Click(object sender, EventArgs e) 94 { 95 //彻底的退出 96 System.Environment.Exit(0); 97 } 98 99 //当登录窗体为活动窗体时 100 private void VIPLogin_Activated(object sender, EventArgs e) 101 { 102 //设置文本框txtName获得焦点 103 txtName.Focus(); 104 } 105 106 //获取文本框txtName的快捷键 107 private void txtName_KeyUp(object sender, KeyEventArgs e) 108 { 109 if (e.KeyCode == Keys.Enter) 110 { 111 txtPwd.Focus(); 112 txtPwd.SelectAll(); 113 } 114 } 115 116 //获取文本框txtPwd的快捷键 117 private void txtPwd_KeyUp(object sender, KeyEventArgs e) 118 { 119 if (e.KeyCode == Keys.Enter) 120 { 121 btnLogin_Click(null, null); 122 } 123 } 124 } 125 }
标签:
原文地址:http://www.cnblogs.com/start-from-scratch/p/5423744.html