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#.NET 可以为不同的客户定制不同的登录窗体的设计思路参考【功能代码组件化,可以灵活选配】
- C#.NET 可以为不同的客户定制不同的登录窗体的设计思路参考【功能代码组件化,可以灵活选配】
- C#.NET 可以为不同的客户定制不同的登录窗体的设计思路参考【功能代码组件化,可以灵活选配】
- C#下WinForm编程:登录窗体的设计
- vs2010 c# MySql 用户登录注册设计代码优化1
- C#调用域账户登录窗体代码
- 2014-05-09毕业设计:c#中的Dispose,ShowDialog很有个性,窗体的登录过程,序列化,InitializeComponent方法,
- C# winform进度条(异步) 窗体设计代码
- C#WinForm4张纸牌窗体设计补充后续Point类代码
- C#下WinForm编程:登录窗体的设计
- C#窗体设计《体检套餐》代码
- 黄聪:如何判断VS开发C#是否为设计模式,以免编译之前操作窗体设计器代码自动运行
- C#设计登录界面及代码
- C#下WinForm编程:登录窗体的设计
- C#第九周实验之窗体设计
- c# 做的登录窗体,登录成功后当前登录Form关闭,打开Main窗体,但Main窗体点关闭按钮后程序仍在进程怎么办
- C#移动无标题栏窗体的三种代码:
- C#模拟登录Discuz论坛 附代码 Discuz X1.5
- 【zz】C#登陆窗口设计及代码网址集
- 【转】C#中代码实现控件随窗体的自由变换