大家好!
我的开发平台是Visual Studio 2005 + WinCE 5.0,用C#开发程序。
现在想实现一个启动界面的功能,就是程序启动后,显示一个窗体界面一段时间之后这个窗体自动关闭,然后再进入主窗体。
我的思路是这样的:在主窗体的程序中加一个子线程来调出启动窗体Splash,等待3秒钟之后abort这个子线程,这样起到关闭启动窗体的目的。程序中有两个form: Splash、Form1,代码如下:
namespace Spalsh_test
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// 新建子线程
Thread th = new Thread(new ThreadStart(DoSplash));
th.Start();
Thread.Sleep(2000); // 等待2秒
th.Abort();
Thread.Sleep(1000); // 等待子线程释放资源
}
private void DoSplash()
{
// 这里新建一个Splash实例,调出这个窗体
Splash sp = new Splash();
sp.ShowDialog();
}
}
}
现在的问题是:
这段代码在Windows平台运行的很好,但是一旦在WinCE下运行,就会出现这种现象:启动界面Splash关闭后,主窗体Form1也一闪而过,自动关闭,然后程序自动退出。
小弟新手,这个问题我查了好长时间也不清楚问题出在哪里,请高手们指点一二。
非常感谢!
C#啊,没有用过。
但解决问题的方法是一样的,调试,看看主窗体为什么会退出?
谢谢楼上!
我也非常纳闷,不知道为什么主窗体会自动退出,单步走也看不出来问题出在哪里。