如何在 Windows 窗体应用程序中构建启动屏幕?

2024-01-19

我需要在应用程序启动时显示启动画面几秒钟。有人知道如何实施吗?

将非常感谢您的帮助。


首先,将启动屏幕创建为无边框、不可移动的形式,并在其上显示图像,设置为最初显示在屏幕中央,并按您想要的方式着色。所有这些都可以在设计器内部设置;具体来说,您想要:

  • 将窗体的 ControlBox、MaximizeBox、MinimizeBox 和 ShowIcon 属性设置为“False”
  • 将 StartPosition 属性设置为“CenterScreen”
  • 将 FormBorderStyle 属性设置为“无”
  • 将表单的MinimumSize 和MaximumSize 设置为与其初始大小相同。

然后,您需要决定在哪里显示它以及在哪里消除它。这两个任务需要发生在程序主启动逻辑的相对两侧。这可能位于应用程序的 main() 例程中,也可能位于主应用程序表单的 Load 处理程序中;无论您在何处创建大型昂贵的对象、从硬盘驱动器读取设置以及通常在主应用程序屏幕显示之前花费很长时间在幕后执行操作。

然后,您所要做的就是创建表单的一个实例,Show() 它,并在进行启动初始化时保留对它的引用。主窗体加载后,关闭()它。

如果您的启动屏幕上有动画图像,则该窗口也需要“双缓冲”,并且您需要绝对确保所有初始化逻辑都发生在 GUI 线程之外(这意味着您不能让您的主线程在主窗体的加载处理程序中加载逻辑;您必须创建一个BackgroundWorker 或其他一些线程例程。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Windows 窗体应用程序中构建启动屏幕? 的相关文章

随机推荐

  • 使用 SSL 的 wcf net.tcp

    有人有在 WCF 中使用 SSL 和 net tcp 绑定的经验吗 我读过这是可能的 但没有找到有关如何实现它的良好信息 我很想听听任何了解或实施过这一点的人的意见 提前致谢 看看这个链接里的内容 http msdn microsoft c
  • 通过传递带有要选择的列名称的有序向量,对 dplyr 中的列进行动态排序

    我使用下面的代码生成一个简单的汇总表 Data data mtcars Lib require dplyr Summary mt sum lt mtcars gt group by am gt summarise each funs min
  • php 回显尖括号

    我想在页面上显示文本 文本应该如下所示
  • CASE 语句未正确定义列雪花

    我有一个以下格式的查询 用于执行COALESCE以及使用定义一个新列CASE陈述 SELECT COALESCE mm1 missing AS mm1 COALESCE mm2 missing AS mm2 CASE WHEN mm1 fa
  • HTML::PullParser 随机分割文本元素

    我正在使用 Perl 模块HTML PullParser 我注意到它有时会随机分割文本元素 据我所知 例如 如果我有一个 html 文件test html与内容 font style font family none size 2 THE
  • 确定掷骰子中数字出现的频率

    对于游戏 我试图确定在给定的骰子数量下特定的 出现的频率 我知道 这个问题看起来很奇怪 让我尝试用实际数字来解释它 因此 对于 1 个骰子 每个数字的频率将相同 1 6 将出现相同的次数 现在对于 2 个骰子 情况会变得不同 我想 5 6
  • 无法为 Facebook 测试用户添加当前城市

    我正在开发基于位置的功能 因此在测试应用程序下创建了一些 Facebook 测试帐户 我试图为所有测试用户添加当前城市 手动 但 Facebook 在输入城市时抛出以下错误 您请求的内容现在无法显示 可能是 暂时不可用 您点击的链接可能已过
  • Linux 下的 Ruby 不区分大小写地打开文件

    有没有办法在Linux下的Ruby中不区分大小写地打开文件 例如 给定字符串foo txt 我可以打开该文件吗FOO txt 一种可能的方法是读取目录中的所有文件名并手动搜索所需文件的列表 但我正在寻找一种更直接的方法 一种方法是编写一个小
  • 将 EAR 模块转为 OSGI 包的正确方法

    有必要将 EAR 的一部分 即战争 转变成 OSGI 包并保留其互操作性 Glassfish 3 0 1 已经有了osgi web container模块 我成功部署了独立的 OSGI war 但如果是前企业战争 我觉得有点困难 我该如何处
  • solr 地理层次结构

    我一直在试图找出一种在 solr 中实现层次结构分面的方法 但不知道在我的情况下如何做到这一点 我读过几篇关于在 solr 中进行层次结构的文章以及补丁 64 和 792 中的解决方案 我遇到的主要问题是我的实体可以属于层次结构的多个分支
  • R ggplot2 - 简单绘图 - 无法指定对数轴限制

    我正在尝试在 R 中的 ggplot2 中创建一个简单的密度图 这是我的代码 效果很好 d lt ggplot result aes x result baseMeanA d geom density colour darkgreen si
  • 如何将 java.time.Instant 格式化为本地时区的字符串?

    如何格式化javax time Instant http threeten sourceforge net apidocs 2011 01 07 javax time Instant html作为本地时区的字符串 以下是本地翻译的Insta
  • RadDateTimePicker + 用于数据输入的掩码

    要求 允许用户以 格式输入日期 同时还可以从 DatePicker 中选择日期 假设输入的所有年份都是 2000 年之后 例如 用户输入 050513 它会变成 5 5 2013年 或者 如果他们从 DatePicker 中选择它 则提供相
  • Scalatest 和 Spark 给出“java.io.NotSerializedException:org.scalatest.Assertions$AssertionsHelper”

    我正在借助 测试 Spark Streaming 应用程序com holdenkarau spark 测试基地 and 分级测试 import com holdenkarau spark testing StreamingSuiteBase
  • Rails 包含范围

    我有一个名为 Author 的模型 一个作者有很多文章 文章有一个名为 published 的范围 它的作用是 where published true 我想加载作者以及已发表的文章 我试过 Author includes articles
  • Pandas 的部分总和和小计

    I m trying to achieve a table with subtotals as shown here http pandas pydata org pandas docs stable cookbook html pivot
  • pandas 行值到列标题

    我有一个像这样的数据框 df pd DataFrame id1 1 1 1 1 2 2 2 id2 1 1 1 1 2 2 2 value a b c d a b c id1 id2 value 0 1 1 a 1 1 1 b 2 1 1
  • 使用 Google Maps API 绘制地图路径/航点并播放路线

    我试图在播放映射路线时绘制访问的路径 如下例所示 加载地图时 我希望绘制的点 A B C D E 然后 F 依次连接 我已成功绘制了这些点 但无法将这些点逐个动态链接 这是我的代码
  • UICollectionView 单元格视图重叠

    我的单元格重叠 如下所示 my cellForItemAtIndexPath是这样的 func collectionView collectionView UICollectionView cellForItemAtIndexPath in
  • 如何在 Windows 窗体应用程序中构建启动屏幕?

    我需要在应用程序启动时显示启动画面几秒钟 有人知道如何实施吗 将非常感谢您的帮助 首先 将启动屏幕创建为无边框 不可移动的形式 并在其上显示图像 设置为最初显示在屏幕中央 并按您想要的方式着色 所有这些都可以在设计器内部设置 具体来说 您想