我想问一下如何在程序加载时出现加载屏幕(只是图片或其他东西),并在程序加载完成后消失.
在发烧友的版本中,我看到了显示的进程条(%).你怎么能拥有它,你如何计算显示的百分比?
我知道有一个Form_Load()事件,但我没有看到Form_Loaded()事件,或者%作为属性/属性.
我们可以获得分辨率和屏幕的东西Screen。所以,如果我们想在屏幕中央放置一些东西,我们应该使用Screen.WorkingArea.Widthand Screen.WorkingArea.Height。
但是,在 Windows 8.1(不确定其他操作系统)中,如果项目看起来太小,则可以在屏幕上缩放项目。您可以通过调用桌面上的上下文菜单来检查它,选择“屏幕分辨率”,然后选择“放大或缩小文本和其他项目”。
问题是,它似乎确实提高了屏幕分辨率!所以,Screen.WorkingArea.Width和Screen.WorkingArea.Height给你换算值,并指向Screen.WorkingArea.Width/2 Screen.WorkingArea.Height/2将在实际屏幕的中心不再是(200%缩放这点将在屏幕的右下角)。这可能会破坏 UI 项目的大量放置。
那么,是否有可能获得缩放的价值?我找不到任何包含此信息的类。
我只想要一个简单的Splash Screen示例.
获取代码,插入我的图片,添加2行代码加载并完成.
但我只能谷歌这么复杂,太多了.我只想要一张图片越来越透明,直到它自动隐藏并显示我的窗口.
我尝试了Codeproject的"prettygoodsplashscreen",但不适合我.
Lang是c#.net 2.0
我希望在我的应用程序的主窗体加载时显示启动画面,并且启动窗体应该消失,而不必在构建定时器等等.另一个重要的事情是主窗体应该是确定何时应用程序退出,何时使用我的启动窗体启动应用程序然后用它来打开我的主窗体我无法处理启动画面,因为这会杀死应用程序.
我试图让启动画面首先出现并在启动后MainForm出现.但是我在启动画面中的进度条没有到达栏的末尾.程序继续运行而不起作用.
如何在加载主窗体期间显示启动画面?
我的代码就是这样的:
public partial class SplashForm : Form
{
public SplashForm()
{
InitializeComponent();
}
private void SplashForm_Load(object sender, EventArgs e)
{
timer1.Enabled = true;
timer1.Start();
timer1.Interval = 1000;
progressBar1.Maximum = 10;
timer1.Tick += new EventHandler(timer1_Tick);
}
public void timer1_Tick(object sender, EventArgs e)
{
if (progressBar1.Value != 10)
{
progressBar1.Value++;
}
else
{
timer1.Stop();
Application.Exit();
}
}
}
Run Code Online (Sandbox Code Playgroud)
以下是代码的第一部分MainForm:
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
Application.Run(new SplashForm());
}
}
Run Code Online (Sandbox Code Playgroud)