最最近写了一个WinForm应用程序的版本升级器,测试发现没有新版本时升级器界面会一闪而过(闪屏),用户体验不好,于是想怎么解决这个问题。
升级器主要代码如下:
代码如下 | 复制代码 |
using System; namespace WindowsFormsApplication1 private void Form1_Load(object sender, EventArgs e) /// |
开始的思路是先把窗体隐藏起来,等确认升级时再显示窗体,修改,测试可以解决闪屏问题[1]:
代码如下 | 复制代码 |
private void Form1_Load(object sender, EventArgs e) //todo |
还有没有其他解决方法?经分析,检测版本和From1窗体没什么关系,要是能先检测版本,确认升级时再初始化显示Form1窗体逻辑上更恰当,肯定也能解决闪屏问题,可以这么实现吗?可以,把检测过程移到应用程序入口函数即可,修改后的Program.cs如下:
代码如下 | 复制代码 |
using System; namespace WindowsFormsApplication1 //1.检测版本 /// |
这么改还有一个优点:完美解决了应用程序旧版本参数传入问题(从Main函数参数传入)。
补充说明
[1].在Form1_Load设置窗体属性this.Visible = false;或调用方法this.Hide();不能隐藏窗体;
我最强舞者 (I, Best Dancer)安卓版v8
我最强舞者(I, Best Dancer)是一款休闲放置类手
迷你世界国服版本2024 v1.43.0
迷你世界国服版本2024是一款自由度非常高的沙盒游戏,玩法和
烹饪乐园 安卓版v1.23.6
烹饪乐园(Cooking Town)是一款非常好玩的餐厅模拟
迷你世界小米服 最新安卓版v1.43.0
迷你世界小米版是由迷你玩科技开发的休闲模拟经营类游戏。此版本
布娃娃Sprunki沙盒 安卓版v0.0.1
布娃娃Sprunki沙盒是一个非常有趣的沙盒游戏,复古简约的