您的位置:首页 > 编程语言 > C#

C#登录窗体代码设计

2017-10-12 23:23 295 查看

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.测试

调试程序。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C# 登录界面