启动画面 (MetroFramework) 不显示 C#?
Splash screen(MetroFramework) is not displaying C#?
我使用 Metro 框架来创建启动画面,但是当我对线程使用 .Abort()
函数时,启动画面根本不起作用。但是,如果我使用 .Suspend()
它可以正常工作,但即使在主窗体加载后,启动画面也不会处理。
这是代码,
public Login()
{
Thread t = new Thread(new ThreadStart(loading));
t.Start();
InitializeComponent();
for(int i = 0; i <= 1000; i++)
{
Thread.Sleep(10);
t.Abort();
}
}
void loading()
{
Splash frmsplash = new Splash();Application.Run(frmsplash);
}
这里是闪屏代码,
public partial class Splash : MetroFramework.Forms.MetroForm
{
public Splash()
{
InitializeComponent();
}
}
我找到了一个解决方案,但不知道它是否适用于每个人,我只是将 t.Abort()
放在 for 循环之外,它对我有用。
Thread.Abort 一次又一次地引发,直到它被 Thread.ResetAbort 处理...考虑使用连接或中断并等待线程退出。
我使用 Metro 框架来创建启动画面,但是当我对线程使用 .Abort()
函数时,启动画面根本不起作用。但是,如果我使用 .Suspend()
它可以正常工作,但即使在主窗体加载后,启动画面也不会处理。
这是代码,
public Login()
{
Thread t = new Thread(new ThreadStart(loading));
t.Start();
InitializeComponent();
for(int i = 0; i <= 1000; i++)
{
Thread.Sleep(10);
t.Abort();
}
}
void loading()
{
Splash frmsplash = new Splash();Application.Run(frmsplash);
}
这里是闪屏代码,
public partial class Splash : MetroFramework.Forms.MetroForm
{
public Splash()
{
InitializeComponent();
}
}
我找到了一个解决方案,但不知道它是否适用于每个人,我只是将 t.Abort()
放在 for 循环之外,它对我有用。
Thread.Abort 一次又一次地引发,直到它被 Thread.ResetAbort 处理...考虑使用连接或中断并等待线程退出。