• 5.C#WinForm基础登陆失败三次退出系统


    目标:

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

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


         退出程序:this.close();或者Application.Exit();   

         文本框的集中模式:Mutiline(多行)、PasswordChar(密码)

         string Datatime().ToString()(+3重载)
         将当前System.DataTime对象的值转换为其有效的字符串表示形式

    源码如下:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace 登陆错误三次程序退出
    {
        public partial class Form1 : Form
        {
            private int ErrorTimes = 0;
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                string username = textBox1.Text;
                string password = textBox2.Text;
               
                if (username.Equals("admin", StringComparison.OrdinalIgnoreCase) && password == "888888")
                {
                    MessageBox.Show("登陆成功!");
                }
                else 
                {
                    /*错误方法
                     *******************************    
                     int TimeErrors = 0;
                     TimeErrors++;
                     if (TimeErrors>= 3)
                     {
                         MessageBox.Show("错误次数过多,程序即将退出!");
                         Application.Exit();
                     }
                     **********************************/
    
    
                    /*************************************
                     * 局部变量每次运行完毕变量的值都会被销毁,下次再运行,会重新初始化。
                     * 而类字段,只要是一个对象,那么只要对象不销毁,就会一直保持对象的字段值。 
                     * ************************************/
    
                    ErrorTimes++;
                    if (ErrorTimes >= 3)
                    {
                        MessageBox.Show("错误次数过多,程序即将退出!");
                        Application.Exit();//退出程序需使用:this.close();或者Application.Exit();
                    }
                    MessageBox.Show("账号或密码不正确,登陆失败!");
                }
    
            }
    
            private void button2_Click(object sender, EventArgs e)
            {
                /*string Datatime().ToString()(+3重载)
                 * 将当前System.DataTime对象的值转换为其有效的字符串表示形式
                 */
                textBox3.AppendText(DateTime.Now.ToString() + "
    ");
    
               /*
                * textBox3.Text = textBox3.Text + DateTime.Now.ToString() + "
    ";
                * 虽然也可以用这种,但不推荐用这种.
                */
            }
        }
    }

    程序运行截图:

  • 相关阅读:
    nefu 628 Garden visiting
    codeforces 814 C. An impassioned circulation of affection 【尺取法 or DP】
    bzoj 2111: [ZJOI2010]Perm 排列计数 (dp+卢卡斯定理)
    Codeforces Round #423 (Div. 2)
    hdu 5955 Guessing the Dice Roll 【AC自动机+高斯消元】
    poj1322 Chocolate 【 概率DP 】
    poj 3414 Pots 【BFS+记录路径 】
    hdu5194 DZY Loves Balls 【概率论 or 搜索】
    51nod 1515 明辨是非 [并查集+set]
    hdu 1175 连连看 [DFS]
  • 原文地址:https://www.cnblogs.com/xingyunblog/p/3889080.html
Copyright © 2020-2023  润新知