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