winform关闭登录窗体打开主窗体的方法
2024-08-30 04:56:58
实际使用
Program.cs代码
//声明一个线程
private static System.Threading.Mutex mutex;
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
//开启线程
mutex = new System.Threading.Mutex(true, "OnlyRun");
if(mutex.WaitOne(0, false))
{
FormLogin fl = new FormLogin();
fl.ShowDialog();
if(fl.DialogResult == DialogResult.OK)
{
Application.Run(new FormMain());
}
else
{
return;
}
}
else
{
MessageBox.Show("程序已经在运行!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
Application.Exit();
}
}
登录窗体(FormLogin)代码
if(textBox1.Text == "123")
{ //验证用户名密码成功
this.DialogResult = DialogResult.OK; //返回一个登录成功的对话框状态
this.Close(); //关闭登录窗口
}
优劣
优:1、可以防止重复运行该程序。
改进:1、根据需要是否关闭Login窗体。
其他方法一
使用Close关闭登录窗体,使用Application.Run()方法打开主窗体
Program.cs代码
FormLogin fl = new FormLogin();
fl.ShowDialog();
if(fl.DialogResult == DialogResult.OK)
{
Application.Run(new FormMain());
}
else
{
return;
}
登录窗体(FormLogin)代码
private void button1_Click(object sender, EventArgs e)
{
if(textBox1.Text == "aaa")
{ //验证用户名密码成功
this.DialogResult = DialogResult.OK; //返回一个登录成功的对话框状态
this.Close(); //关闭登录窗口
}
}
优劣
优:1、将登录窗体关闭,只打开主窗体。
劣:1、如果需要切换用户,还需要重新运行窗体,无法使用FormLogin.Show();方法。
其他方法二
使用Hide()方法隐藏登录窗体,使用实例化的方法打开主窗体。
优劣
最新文章
- HTTP的长连接和短连接——Node上的测试
- .Net的内置对象之一 Request
- 我的OpenCV学习笔记:VideoCapture类
- return和finally的执行顺序
- Android Glide数据更新及内存缓存、硬盘缓存清理
- Codeforces Round #267 Div.2 D Fedor and Essay -- 强连通 DFS
- 在 mysql 中利用 Duplicate key, 一句话实现存在的更新不存在插入功能
- 李洪强漫谈iOS开发[C语言-023]-取余数运算符
- Redis Cache 简介
- 胜利大逃亡(续)(状态压缩bfs)
- NSNotification、delegate和KVO的区别
- oracle系列笔记(2)---多表查询
- git远程仓库之添加远程库
- 【1414软工助教】团队作业3——需求改进&;系统设计 得分榜
- @Scheduled不执行的原因
- Windows Server 2016-三种方法备份还原DHCP服务器
- Java8-Optional与null
- 版本控制-git(二)
- React中ref的使用方法
- boot cd_rom struct
热门文章
- 【干货】linux使用nginx一个80端口部署多个项目(spring boot、vue、nuxt、微信小程序)
- pip递归安装报错继续安装
- Image Inpainting with Learnable Bidirectional Attention Maps
- JVM(四)-虚拟机对象
- 第7.12节 可共享的Python类变量
- 第14.13节 BeautifulSoup的其他功能导览
- 第15.3节 PyCharm程序调试功能介绍
- 第15.8节 PyQt入门学习:Designer的界面功能介绍
- PyQt(Python+Qt)学习随笔:Qt Designer中部件的快捷菜单策略(contextMenuPolicy)取值及含义
- PyQt(Python+Qt)学习随笔:Qt Designer中部件的geometry几何属性