4,2011.9.1用户登录,更换,密码更改
2011-09-01 13:03
225 查看
main_form中3个按钮,
登录,更换用户,密码更改
登录按钮 与后2个按钮不同时有效
使用的是一个LOGIN_form
根据不同要求,有区别
定义2个与父窗口交换数据的变量
dataset使用VS生成
更改密码,只有一个长度的甄别
登录用户与更换用户是相同的
设定了3个定时器,3个情况(用户名错,密码错,正确)
显示不同表情,不同的timer_tick事件
登录,更换用户,密码更改
登录按钮 与后2个按钮不同时有效
//用户登录 private void login_barButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { login_Form my_loging_form = new login_Form(); my_loging_form.Text = "用户登录"; if (my_loging_form.ShowDialog() == DialogResult.OK) { this.login_barButtonItem.Enabled = false; this.userchange_barButtonItem.Enabled = true; this.passwordChange_barButtonItem .Enabled = true; //获取userName this.my_userName = my_loging_form.userName; this.my_userLevel = my_loging_form.userLevel; this.Text = this.Text + "---" + this.my_userName; my_checkLevel(); } my_loging_form.Dispose(); } //密码更改 private void passwordChange_barButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { login_Form my_passwordChange_form = new login_Form(); my_passwordChange_form.Text = "密码更改"; my_passwordChange_form.userName = this.my_userName.Trim(); my_passwordChange_form.ShowDialog(); my_passwordChange_form.Dispose(); } //切换用户 private void userchange_barButtonItem_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { //关闭所有子窗口 foreach (Form child_form in this.MdiChildren) { child_form.Close(); } //没有子窗口后,打开用户更换窗口 if (this.ActiveMdiChild == null) { login_Form my_userChange_form = new login_Form(); my_userChange_form.Text = "更换用户"; my_userChange_form.userName = this.my_userName.Trim(); if (my_userChange_form.ShowDialog() == DialogResult.OK) { this.my_userName = my_userChange_form.userName; this.my_userLevel = my_userChange_form.userLevel; if (this.Text.IndexOf("---") != -1) { this.Text = this.Text.Remove(this.Text.IndexOf("---")); } this.Text = this.Text + "---" + this.my_userName; my_checkLevel(); } my_userChange_form.Dispose(); } } //按用户类型,给操作权限(使功能按钮可用) private void my_checkLevel() { // throw new Exception("The method or operation is not implemented."); this.buyList_barButtonItem.Enabled = my_userLevel[0] == '1'; this.LookList_barButtonItem.Enabled = my_userLevel[0] == '1'; this.inWareCheck_barButtonItem.Enabled = my_userLevel[1] == '1'; this.outWareCheck_barButtonItem.Enabled = my_userLevel[1] == '1'; }
使用的是一个LOGIN_form
根据不同要求,有区别
private void login_Form_Load(object sender, EventArgs e) { this.userName_textEdit.Text = my_userName; if (this.Text.Trim() == "密码更改") { this.userName_textEdit.Enabled = false; this.ok_simpleButton.Visible = false; this.change_simpleButton.Visible = true; this.password_textEdit.Focus(); } else { this.userName_textEdit.SelectAll(); this.userName_textEdit.Focus(); if (this.Text.Trim() == "更换用户") { this.ok_simpleButton.ImageIndex = 2; this.ok_simpleButton.Text = "更换"; } } }
定义2个与父窗口交换数据的变量
private string my_userName; private string my_userLevel; public string userName { get { return my_userName; } set { my_userName = value; } } public string userLevel { get { return my_userLevel; } }
dataset使用VS生成
更改密码,只有一个长度的甄别
//修改密码 private void change_simpleButton_Click(object sender, EventArgs e) { if (this.password_textEdit.Text.Trim().Length < 6) { MessageBox.Show("密码长度不得低于6字符", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); this.password_textEdit.SelectAll(); this.password_textEdit.Focus(); } else { try { this.userListTableAdapter.Fill(this.sY_Store_DataSet.UserList); DataRow my_user_datarow = this.sY_Store_DataSet.UserList.Rows.Find(this.my_userName .Trim()); if (my_user_datarow == null) { MessageBox.Show(this.my_userName + " 已被删除"); this.DialogResult = DialogResult.Cancel; } else { my_user_datarow.BeginEdit(); my_user_datarow["userpassword"] = this.password_textEdit.Text.Trim().ToLower(); my_user_datarow.EndEdit(); this.userListTableAdapter.Update(this.sY_Store_DataSet.UserList); this.DialogResult = DialogResult.OK; } } catch (System.Exception err) { MessageBox.Show(err.Message); } }
登录用户与更换用户是相同的
private void ok_simpleButton_Click(object sender, EventArgs e) { this.errorProvider.Clear(); try { this.userListTableAdapter.Fill(this.sY_Store_DataSet.UserList); DataRow my_user_datarow = this.sY_Store_DataSet.UserList.Rows.Find(this.userName_textEdit.Text.Trim()); if (my_user_datarow == null) { this.error_pictureBox.Visible = true; this .Enabled =false ; this.userErr_timer.Start();//开始计时 this.userErr_timer.Interval = 2000;//计时2秒 } else if(Convert .ToString (my_user_datarow ["userpassword"])!=this .password_textEdit .Text .Trim ().ToLower ()) { this.error_pictureBox.Visible = true; this.Enabled = false; this.PassErr_timer.Start(); this.PassErr_timer.Interval = 2000; } else { this.ok_pictureBox.Visible = true; this.my_userName = this.userName_textEdit.Text.Trim(); this.my_userLevel =Convert .ToString ( my_user_datarow["userlevel"]).Trim (); this.Enabled = false; this.ok_timer.Start(); this.ok_timer.Interval = 2000; } } catch (System.Exception err) { MessageBox .Show ( err.Message ) ; } }
设定了3个定时器,3个情况(用户名错,密码错,正确)
显示不同表情,不同的timer_tick事件
private void ok_timer_Tick(object sender, EventArgs e) { this.ok_timer.Stop(); this.DialogResult = DialogResult.OK; } private void userErr_timer_Tick(object sender, EventArgs e) { this.error_pictureBox.Visible = false; this.Enabled = true; this.errorProvider.SetError(this.userName_textEdit, "此用户不存在"); this.userName_textEdit.SelectAll(); this.userName_textEdit.Focus(); this.userErr_timer.Stop(); } private void PassErr_timer_Tick(object sender, EventArgs e) { this.error_pictureBox.Visible = false; this.Enabled = true; this.errorProvider.SetError(this.password_textEdit , "密码错误"); this.password_textEdit.SelectAll(); this.password_textEdit.Focus(); this.PassErr_timer.Stop(); }
相关文章推荐
- 用户 'sa' 登录失败。原因: 该帐户的密码必须更改。
- 用户 登录失败。原因: 该帐户的密码必须更改 sql2008 -------源于网络
- svn更改登录用户和密码
- svn更改登录用户和密码
- 用户 jb51net 登录失败。原因: 该帐户的密码必须更改
- svn更改登录用户和密码
- svn更改登录用户和密码
- Linux用户在第一次登录时强制更改初始密码
- sql server更改登录用户密码
- svn更改登录用户和密码
- sql server更改登录用户密码
- oracle 用户解锁与更改登录密码
- svn更改登录用户和密码
- Linux用户在第一次登录时强制更改初始密码
- redhat下查看系统当前登录的用户、更改用户密码、强制踢出用户
- svn更改登录用户和密码
- 用户 jb51net 登录失败。原因: 该帐户的密码必须更改
- Exchange Server OWA更改密码后,用户使用旧密码仍能登录
- svn更改登录用户和密码
- mysql常用命令(登录、增加用户、密码更改)