C# winform 登陆成功打开主form,同时关闭登陆form
2010-09-15 17:41
537 查看
设置 Application.Run(new Form1());其中form1为主窗口,然后在form1的load方法里面这样写:
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030192/cdec0645add3fc3c328197dda5c76203.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030189/81178cc93a2a3bb5048d90d76e7ec935.gif)
代码
private void Form1_Load(object sender, EventArgs e)
{
Form f2 = new Form2();
f2.ShowDialog();
if (f2.DialogResult == DialogResult.OK)
{
MessageBox.Show("hello"); // 登陆成功显示hello
}
else {
this.Close();
}
}
在form2的登陆按钮的事件上这样写
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "a") { //验证密码
this.DialogResult = DialogResult.OK;
this.Close();
}
}
如果这样写的话,是可以进行登陆验证的。主要原理就是利用的DialogResult = DialogResult.OK来实现的,
首先程序load主form1,主form1就会new一个form2并弹出登陆窗口,在登陆窗口验证密码正确以后设置DialogResult.OK这一句,再将对话框关闭。关闭以后from_load方法继续运行判断弹出的登陆框form2的DialogResult是否是ok,如果是,则加载主表单,如果否,则关闭主表单。
第二种方法:
将mian方法改写成
Form f2 = new Form2();
f2.ShowDialog();
if (f2.DialogResult == DialogResult.OK)
Application.Run(new Form1());
else return;
在main方法运行的时候就先加载form2登陆框进行验证,如果验证通过才run(new form1())。如果不通过则返回。
备注:
还有一种就是将登陆框hide,直接是 this.hide()而不是this.close()。以上这两种方法,第二种比第一种简单一些,它们都可以避免X掉登陆框之后任然加载主表单的情况。同时这两种方法都不会出现主次窗口都显示和关掉一个窗口另外一个也关闭的情况
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030192/cdec0645add3fc3c328197dda5c76203.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015/2015030189/81178cc93a2a3bb5048d90d76e7ec935.gif)
代码
private void Form1_Load(object sender, EventArgs e)
{
Form f2 = new Form2();
f2.ShowDialog();
if (f2.DialogResult == DialogResult.OK)
{
MessageBox.Show("hello"); // 登陆成功显示hello
}
else {
this.Close();
}
}
在form2的登陆按钮的事件上这样写
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "a") { //验证密码
this.DialogResult = DialogResult.OK;
this.Close();
}
}
如果这样写的话,是可以进行登陆验证的。主要原理就是利用的DialogResult = DialogResult.OK来实现的,
首先程序load主form1,主form1就会new一个form2并弹出登陆窗口,在登陆窗口验证密码正确以后设置DialogResult.OK这一句,再将对话框关闭。关闭以后from_load方法继续运行判断弹出的登陆框form2的DialogResult是否是ok,如果是,则加载主表单,如果否,则关闭主表单。
第二种方法:
将mian方法改写成
Form f2 = new Form2();
f2.ShowDialog();
if (f2.DialogResult == DialogResult.OK)
Application.Run(new Form1());
else return;
在main方法运行的时候就先加载form2登陆框进行验证,如果验证通过才run(new form1())。如果不通过则返回。
备注:
还有一种就是将登陆框hide,直接是 this.hide()而不是this.close()。以上这两种方法,第二种比第一种简单一些,它们都可以避免X掉登陆框之后任然加载主表单的情况。同时这两种方法都不会出现主次窗口都显示和关掉一个窗口另外一个也关闭的情况
相关文章推荐
- C# winform 登陆成功打开主form,同时关闭登陆form
- C# winform 登陆成功打开主form,同时关闭登陆form
- winform里c#验证用户正确后 怎么打开新窗口时关闭登陆窗口
- C# WinForm 关闭登陆窗体,打开主窗体的实现.
- c# 做的登录窗体,登录成功后当前登录Form关闭,打开Main窗体,但Main窗体点关闭按钮后程序仍在进程怎么办
- C# WinForm 关闭登陆窗体,打开主窗体的实现.
- C#Form打开一个新窗口的同时关闭这个窗体
- c# 做的登录窗体,登录成功后当前登录Form关闭,打开Main窗体,但Main窗体点关闭按钮后程序仍在进程怎么办
- C#.NET中怎样打开一个新Form,同时关闭当前Form?
- C#中关闭第一个Form窗口,打开另一个新窗口方法
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- C# Winform 窗体Form的关闭按钮变灰色
- c# winform 让Form窗体上系统自带的红色关闭按钮失效,点击关闭变为隐藏
- C#winform截屏、关机、重启、注销、关闭显示器、打开关闭光驱
- 从A页面打开了B页面,对B页面进行修改,修改成功后关闭B页面同时刷新A页面
- c# 在打开一个窗体的同时关闭本窗体(以vs2005为例)
- C#中关闭第一个Form窗口,打开另一个新窗口方法
- winform 验证用户正确后打开新窗口时关闭登陆窗口
- 使用C#打开新窗口关闭旧窗口的方法;winform中防止重复打开多个相同子窗体
- [转]使用C#打开新窗口关闭旧窗口的方法;winform中防止重复打开多个相同子窗体