[点晴永久免费OA][C#]使用this.Hide();/this.Visible=false;时窗口不是隐藏而是程序彻底退出,原因是什么?
当前位置:点晴教程→点晴OA办公管理信息系统
→『 经验分享&问题答疑 』
:[C#]使用this.Hide();/this.Visible=false;时窗口不是隐藏而是程序彻底退出,原因是什么?
原因是窗口不是正常标准方式打开:
AboutBox form = new AboutBox();
form.Show(); 而是采用如下方式打开:
AboutBox form = new AboutBox();
form.ShowDialog(); ShowDialog方式打开的窗口如果使用了this.Hide(); 或 this.Visible=false; ,就会导致程序异常退出。
程序打开时判断是否重复打开代码:
bool createNew;
// 在此方法返回时,如果创建了局部互斥体(即,如果 name 为 null 或空字符串)或指定的命名系统互斥体,则包含布尔值 true
// 如果指定的命名系统互斥体已存在,则为false
using (Mutex mutex = new Mutex(true, Application.ProductName, out createNew))
{
if (createNew)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new FrmMain());
mutex.ReleaseMutex();
}
// 程序已经运行的情况,则弹出消息提示并终止此次运行
else
{
MessageBox.Show("本程序已打开,禁止重复打开本程序!", "重复打开", MessageBoxButtons.OK, MessageBoxIcon.Warning);
Thread.Sleep(1000);
System.Environment.Exit(1);
}
} 该文章在 2022/7/24 16:51:48 编辑过 |
关键字查询
相关文章
正在查询... |