C# WinForm 文件管理系统学习记录(2)__ 登录界面功能实现

上期说过,登录界面功能比较简单,主要目的是实现:用户登录 + 修改密码 + 注册用户,三个功能。WinForm窗体的功能实现总体来说比较简单,大体来说只需要对工具箱中的控件进行拖拽,并添加点击事件,即可完成相应功能。下面来看具体如何实现。

1.实现三个功能所需要的控件

实现登录界面功能所需控件为:label、textbox、button、picturebox(可有可无,用它主要是想添加一些icon使界面更加漂亮些,但结果有些不尽人意)。

在对控件进行应用时,只需要在 Visual Studio 左侧工具箱处输入控件名称,点击搜索便可出现相应控件,之后鼠标左键点击住并拖拽到相应的Design界面上响应位置,控件则使用成功。

控件的属性设置:一般情况下,常常需要调整的属性有Text(显示文本设置)、BackColor(背景颜色)、FlatStyle(边线风格)、Font(字体设置)等。

具体功能的实现,需要进行其他操作方可实现,这个下面进行详细介绍。

2.登录界面的具体功能实现

(1)界面登录

系统对输入的账号密码进行核对,核对成功后跳转至主界面。

 private void button2_Click(object sender, EventArgs e)
        {

            //textBox1为账号文本框的id
            if (textBox1.Text.ToString() == "") {
                MessageBox.Show("请输入账户");
                return;
            }

            //在数据库中对需要登录的账号进行查询
            string sql1 = "select * from app_user where user_name = '" + textBox1.Text.ToString() + "'";

            //PostgreSqlHelper.OpenTable(sql1)__为自定义的一个函数,详细信息见下一段
            DataTable dt = new DataTable();
            dt = PostgreSqlHelper.OpenTable(sql1);

            //对查找到的数据,进行判断
            if (dt.Rows.Count == 0) {
                MessageBox.Show("账户输入错误,请重新输入");
            }

            else {
                if (dt.Rows[0]["login_name"].ToString() == textBox2.Text.ToString())
                {
                    //跳转界面
                    Form2 updata = new Form2();
                    updata.ShowDialog();//ShowDialog:打开窗体并不能操作其他窗体
                    this.Close();
                }

                else {
                    MessageBox.Show("密码错误,请重新输入");
                }
            }
        }

OpenTable(string SQLString)函数的代码如下:

public static DataTable OpenTable(string SQLString)
        {
            using (NpgsqlConnection connection = new NpgsqlConnection(connectionString))
            {
                DataSet ds = new DataSet();
                try
                {
                    connection.Open();
                    NpgsqlDataAdapter command = new NpgsqlDataAdapter(SQLString, connection);
                    command.Fill(ds);
                }
                catch (System.Data.SqlClient.SqlException ex)
                {
                    throw new Exception(ex.Message);
                }
                finally
                {
                    connection.Close();
                }
                if (ds != null && ds.Tables != null && ds.Tables.Count != 0)
                    return ds.Tables[0];
                else
                    return null;
            }
        }

至此,简单的登录功能就实现了。

(2)注册账号

可在登录界面,进行账号的注册(新建账号)。具体代码实现如下:

        //立即注册
        private void button3_Click(object sender, EventArgs e)
        {
            string sql = "select user_key from app_user order by user_key desc";

            DataTable add_data = new DataTable();
            add_data = PostgreSqlHelper.OpenTable(sql);

            //这里是为了设置一个用户不可改变的序号,先查询现存的最大序号,然后+1
            int index = (int)add_data.Rows[0][0];

            index = index+1;

            Form3 add = new Form3(index.ToString());
            add.ShowDialog();
        }

(3)修改密码

这里的修改密码,需要在账号栏处输入正确的账号,然后以原密码正确为条件进行更改。(比较鸡肋)

private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text.ToString() == "") {
                MessageBox.Show("请输入需要修改的账户");
                return;
            }

            string sql1 = "select * from app_user where user_name = '" + textBox1.Text.ToString() + "'";
            DataTable dt = new DataTable();
            dt = PostgreSqlHelper.OpenTable(sql1);
            string index1 = (string)dt.Rows[0][1];
            string index2 = (string)dt.Rows[0][1];

            if (dt.Rows.Count == 0)
            {
                MessageBox.Show("您输入的账户不存在,请重新输入");
            }

            else {

                Form4 updata = new Form4(index1.ToString(), index1.ToString());
                updata.ShowDialog();//ShowDialog:打开窗体并不能操作其他窗体
            }

        }

---------------------------------------------------------------------------------------------------------------------------------

至此,登录界面的功能就全部实现了。希望各位进行批评指正,广提建议!(评论区见)

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
学生个人文件管理系统 v2.0 A.声明: 1.非源代码。 2.有些用户没有设置自己的数据库服务器就直接登录或者注册,这样是不会成的, 请选择自定义服务器,然后填入自己的IP,数据库用户名以及密码,因为默认服 务器的IP是192.168.0.252. 3.暂不支持拖拽功能(将文件拖进去就能上传) 4.每隔10分钟系统会锁定一次,以防止其他用户恶意操作数据,需解锁请输入自己 的登录密码。【暂不支持设置间隔时间或者设置是否采取锁定策略】 5.暂不支持修改上传后的文件的属性(类别等) 6.在Win7上运行时需要管理员权限,请以管理员方式运行本程序。 B.新版特性: 1.修正了大文件上传或下载时服务器超时的Bug. 可上传500M以内的单个文件.(在空间大小足够的前提下) 2.修正了客户端上传文件的时间与服务器时间不同步的Bug, 同时在充分考虑服务器性能的前提下,给客户端提供了正 确的时间。 3.新增数据库压缩功能,针对数据库日志文件动辄上G的问题 提供了解决方案,使客户端用户使用更流畅。(管理功能) 4.(2011-03-14)纠正了数据创建时错误,适应SQLServer不同 版本的数据库;纠正了在SQLServer下不同版本数据库备份时路径 错误问题。 5.(2011-03-14)纠正了程序中密码验证不区分大小写的错误。 6.(2011-03-18) 纠正了系统锁定后无法解锁的错误 2011-03-18 23:20 南充市扎针高手 李泽波

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值