C#登录窗体代码设计
程序员文章站
2022-05-06 13:27:18
...
1.写作原因与解决的问题
需要制作一个管理软件,涉及到登录界面与主界面问题。但是笔者通过阅读发现,大部分资料是用窗体Hide()方法隐藏登录界面进入主界面,这个方法的缺点是,会一直占用资源,于是我想换个思路。之后可以通过擦掉登录窗体进入主窗体,但是在退出,或者点击窗体右上角×按钮,要求效果完全退出程序,但是主界面一闪而过,虽然达到目的,却感觉别扭,强迫症犯了。所以琢磨、并不断尝试,终于得到如下方法,希望能够帮助到遇到我这种问题的网友,或者是学习登录-主窗体的朋友。
2.界面设计描述
本文主要是为了解决登录窗体与主窗体问题,所以不涉及复杂的功能,尽量简化操作界面与程序,就事论事,能够使浏览之人能够一眼知道我做了什么,以及能够快速获取帮助。
需要两个窗体Form1、Form2,其中Form1作为登录界面,Form2作为主界面。
一个textbox1控件,一个button1作为登录,一个button2作为退出。布局如下(一切简单起见,有完美强迫症的请自行美化):
3.程序完整代码
为了让网友能够直接运行本程序,所以我将公布完成程序代码,初学者尽可能都运行一遍。
在Form1.cs中添加如下代码:
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "1")
{
this.Tag = "验证成功";
this.Close();
}
else
{
MessageBox.Show("验证失败,请重新输入");
textBox1.Text = "";
}
}
private void button2_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void Form1_Load(object sender, EventArgs e)
{
this.Tag = "验证失败";
}
在Program.cs的main方法下,添加如下代码:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form1 loginForm = new Form1();
Application.Run(loginForm);
if (loginForm.Tag.ToString() == "验证成功")
{
Form2 mainForm = new Form2();
Application.Run(mainForm);
}
else
{
Application.Exit();
}
4.测试
调试程序。
上一篇: Servlet实现登录注册
下一篇: 数据库设计1_MySQL