当启动我的应用程序时,我首先必须读取一些数据,必须初始化一些表单等等。那时,用户只会看到灰色准备显示某些形式。

这持续了几秒钟......

我想到了一个启动屏幕,它在单独的线程中加载数据,并显示需要多长时间。或者只是一个状态栏?

你会怎么做这样的事情?

我正在使用 C# .NET 3.5 + Winforms

有帮助吗?

解决方案

使用WindowsForm,越容易是使用BackgroundWorker的。

可以装载期间禁用控制和显示与标签startus条上的进度条“装载数据...”。

MSDN链接: http://msdn.microsoft。 COM / EN-US /库/ system.componentmodel.backgroundworker.aspx

其他提示

请参阅这篇 CodeProject 文章: 用 C# 编写的一个相当不错的启动屏幕

它实现了一个闪屏:

  • 在单独的线程上运行
  • 出现时淡入,消失时淡出
  • 显示使用静态方法更新的运行状态消息
  • 显示并更新预测性自校准所有者绘制的平滑渐变进度条
  • 显示加载完成之前剩余的秒数

这是它的外观示例 - 也许你的会更漂亮。8-)

alt text

如果只持续几秒钟,然后显示所述等待 光标应该罚款。也许可以安排的 显示主窗口尽可能快的,剩下的就是 第一屏幕更新之后开始(例如,使用一个定时器)。 这将减少的感知启动时间。

为了减少启动时间,你也可以考虑 推迟一些启动的行动,如果他们不严格 必要。稍后可以在后台使用来完成 计时器或按需。

我最近写使用汤姆Clements的作为基础的类似初始屏幕。看看我闪屏,看它是否符合您的需求。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top