当前位置:首页 > C#学习

登录系统

小道8年前 (2018-08-22)C#学习5949

登录界面。登录错误三次退出程序,假设用户名、密码是admin、888888,不区分大小写。(易错点:局部变量与类变量)退出程序this.Close()或者Application.Exit()

    public partial class Form1 : Form
    {
        private int i = 0;//定义一个字段 来判断输出错误的次数
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)//单击事件
        {
            qu q = new qu();//创建一个类的实例。
            q.Zh = textBox1.Text;//获取第一个文本框值。
            q.Mm = textBox2.Text;//获取第二个文本框值。
            pan(q.Zh, q.Mm);//调用函数
        }
        public void pan(string zh,string mm)//接收值。
        {
            if ((i < 3)==false)//判断输入错误的次数
            {
                MessageBox.Show("你输入的帐号或密码错误已超过3次。");//如果大于3则执行
                this.Close();//关闭窗口
            }
            if (zh == "admin" && mm == "888888")//判断输入的字符串
            {
                MessageBox.Show("登录成功。");//提示
            }
            else//不是则执行
            {
                i++;//错误次数加1
                MessageBox.Show("你输入的帐号或密码错误。");//提示
            }
        }
    }
    class qu //定义一个类型
    {
        private string zh;//定义一个字段
        private string mm;//定义一个字段
        public string Zh //定义一个属性
        {
            set//设置
            {
                this.zh = value.ToLower();//将输入的值转变成小写。
            }
            get//返回
            {
                return zh;//返回zh变量的值
            }
        }
        public string Mm //定义一个属性
        {
            set//设置
            {
                this.mm = value.ToLower();//将输入的值转变成小写。
            }
            get//返回
            {
                return mm;//返回mm变量的值
            }
        }
    }

输出结果:

image.pngimage.pngimage.png

PS:局部变量每次运行完毕变量的值都会被销毁,下次在运行,会重新初始化,而类字段,只要是一个对象,那么只要对象不销毁,就会一直保持对象的字段值。

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://daobk.com/post/53.html

分享给朋友:

“登录系统” 的相关文章

if语句应用:依次提示用户输入两个整数

if语句应用:依次提示用户输入两个整数

依次提示用户输入两个整数(假设i1、i2)。如果i1、i2都是正数,则将i1的值递增一个数,然后打印i1+i2的值;如果i1、i2都是负数,则将i1的值递减10个数,然后打印i1*i2的值;如果i1、i2中任一个为0,则提示数据有错误;否则计算i1*i2的绝对值。   …

面向对象概念

面向对象概念

面向对象不是取代面向过程的。类、对象。“人”是类,“张三”是“人”这个类的对象。类是抽象的,对象是具体的。按钮就是类,某个按钮就是对象。对象可以叫做类的实例(Instance)。类就像int,对象就像10。字段Field(和某个对象相关的变量),字段就是类的状态。人这个类有姓名、年龄、身高等字段。类…

命名空间namespace

命名空间namespace

namespace(命名空间),用于解决类重名问题,可以看做“类的文件夹”。在代码中使用其他类的时候需要using类所在的namespace。System.Collections.ArrayList,快速引入的方法,右键→解析(Ctrl+.)。为什么使用Convert、Console等类不需要自己写…

索引器

索引器

C#中提供了按照索引器进行访问的方法定义索引器的方式:string this[int index]{get { return ""; }set { }},string为索引器的类型,[]中是参数列表。进行索引器写操作就是调用set代码块,在set内部使用value得到用户设置的值…