任务2.6 密码修改界面功能设计

2018-11-29  本文已影响0人  yexiaoye

1. 界面的效果图

收银员修改密码
1gif.gif
库管员修改密码
2gif.gif

2. 界面实现的功能描述

设计修改密码界面,实现修改用户密码的功能。

3. 界面各控件的参数设置

TextBox控件
属性
name tb_Users
Enabled False

TextBox控件

属性
name tb_NewPwd
lines String[] Array
Passwordchar *

TextBox控件

属性
name tb_ConfirmPwd
lines String[] Array
Passwordchar *

4. 想一想,还有哪些尚需完善的功能

窗口弹出位置和大小需要设置好

5.主要代码

 // 点击“确认”按钮
        private void bt_Ok_Click(object sender, EventArgs e)
        {
            String userName = this.tb_User.Text.Trim();
            String newPwd = this.tb_NewPwd.Text.Trim();
            String confPwd = this.tb_ConfirmPwd.Text.Trim();

            // 验证输入信息
            if (newPwd.Equals(""))
            {
                MessageBox.Show("请输入新密码", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            else if (confPwd.Equals(""))
            {
                MessageBox.Show("请输入确认密码", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            else if (newPwd != confPwd)
            {
                MessageBox.Show("两次密码不一致", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            // 连接字符串,注意与实际环境保持一致
            String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;
            SqlConnection sqlConn = new SqlConnection(connStr);
            try
            {
                // 连接数据库
                sqlConn.Open();

                // 构造命令
                String sqlStr = "update EMPLOYEE set PASSWORD=@pwd where ID=@id";
                SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);

                // SQL字符串参数赋值
                cmd.Parameters.Add(new SqlParameter("@pwd", newPwd));
                cmd.Parameters.Add(new SqlParameter("@id", UserInfo.userId));

                // 将命令发送给数据库
                int res = cmd.ExecuteNonQuery();

                // 根据返回值判断是否修改成功
                if (res != 0)
                {
                    MessageBox.Show("密码修改成功");
                    this.Close();
                }
                else
                {
                    MessageBox.Show("密码修改错误");
                }
            }
            catch (Exception exp)
            {
                MessageBox.Show("访问数据库错误:" + exp.ToString());
            }
            finally
            {
                sqlConn.Close();
            }
        }

        // 在“新密码”输入框中按“回车”,光标跳转到“确认密码”输入框
        private void tb_NewPwd_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == (char)Keys.Enter)
            {
                SendKeys.Send("{tab}");
            }
        }

        // 在“确认密码”输入框中按“回车”,则直接修改密码
        private void tb_ConfirmPwd_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == (char)Keys.Enter)
            {
                this.bt_Ok_Click(sender, e);
            }
        }
    }
上一篇下一篇

猜你喜欢

热点阅读