C# 加载后,应显示的表单将自动关闭
我创建的加载屏幕有问题 我执行代码运行,但在进度条完成后,表单会显示,但会自动关闭 为什么会这样C# 加载后,应显示的表单将自动关闭,c#,winforms,C#,Winforms,我创建的加载屏幕有问题 我执行代码运行,但在进度条完成后,表单会显示,但会自动关闭 为什么会这样 namespace LogIn { public partial class Loading : Form { public Loading() { InitializeComponent(); } private void timer1_Tick(object sender, EventA
namespace LogIn
{
public partial class Loading : Form
{
public Loading()
{
InitializeComponent();
}
private void timer1_Tick(object sender, EventArgs e)
{
progressBar1.Increment(2);
if (progressBar1.Value == 100) timer1.Stop();
if (progressBar1.Value == 100)
{
this.Close();
Login Login = new Login();
Login.ShowDialog();
}
}
}
}
在启动代码(主方法)中,您可能有如下内容:
Application.Run(new Loading());
这使得加载
成为您的首选。当您调用Close
时,您正在关闭加载,这将有效地结束应用程序
你真正想要的是一个概念
有关概述,请参阅和相关答案。在启动代码(您的主要方法)中,您可能有以下内容:
Application.Run(new Loading());
这使得加载
成为您的首选。当您调用Close
时,您正在关闭加载,这将有效地结束应用程序
你真正想要的是一个概念
有关概述,请参阅和相关答案。您认为
this.Close()
在做什么?如果您将加载显示为主应用程序表单,则在调用Close时,它会关闭表单,从而结束应用程序。在您的主应用程序中,可能有“Application.Start(load)”或类似的行。哦!!非常感谢。我用它作为我的主要形式!非常感谢。现在我知道如果主窗体(this.close();)类似于Application.Exit();谢谢你!我不认为它们很简单,这个.Close()只是结束了表单加载的消息循环,它仍然在静态方法Main中运行,如果该方法中有更多代码(在Application.Run(new load())之后),代码将被执行,而Application.Exit()将立即终止应用程序。他们是不同的@KingKing你是绝对正确的,因为它们是不同的-你也是对的,应用程序之后的任何代码.Run都将在应用程序结束之前执行。但是,在通常情况下(即,在Application.Run之后没有代码),效果是类似的。您认为this.Close()
在做什么?如果您将加载显示为主应用程序表单,那么在调用Close时,它会关闭表单,从而结束应用程序。在您的主应用程序中,可能有“Application.Start(load)”或类似的行。哦!!非常感谢。我用它作为我的主要形式!非常感谢。现在我知道如果主窗体(this.close();)类似于Application.Exit();谢谢你!我不认为它们很简单,这个.Close()只是结束了表单加载的消息循环,它仍然在静态方法Main中运行,如果该方法中有更多代码(在Application.Run(new load())之后),代码将被执行,而Application.Exit()将立即终止应用程序。他们是不同的@KingKing你是绝对正确的,因为它们是不同的-你也是对的,应用程序之后的任何代码.Run都将在应用程序结束之前执行。不过,在通常情况下(即Application.Run之后没有代码),效果是类似的。