目标:
登陆界面,登陆错误三次退出程序。假设用户名密码是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() + "\n");/** textBox3.Text = textBox3.Text + DateTime.Now.ToString() + "\n";* 虽然也可以用这种,但不推荐用这种.*/}} }
程序运行截图: