4,2011.9.1用户登录,更换,密码更改

main_form中3个按钮,

登录,更换用户,密码更改

登录按钮  与后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();
        }


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值