gpt4 book ai didi

c# - 启动画面不会隐藏 - 使用 Microsoft.VisualBasic 库

转载 作者:行者123 更新时间:2023-11-30 22:44:59 25 4
gpt4 key购买 nike

我有两种形式。 Form1(代码如下)和 Splash(只是用于测试的默认表单)。

我的问题是应用程序运行后,启动画面不会隐藏。主窗体已加载,但 Splash 仍未关闭。

Form1代码:

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using Microsoft.VisualBasic.ApplicationServices;

namespace WindowsFormsApplication2
{
class Program : WindowsFormsApplicationBase
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[] args)
{
//Application.EnableVisualStyles();
//Application.SetCompatibleTextRenderingDefault(false);
//Application.Run(new Form1());

// Show Form in Single-instance mode
var prg = new Program();
prg.EnableVisualStyles = true;
prg.IsSingleInstance = true;
prg.MinimumSplashScreenDisplayTime = 1000;
prg.SplashScreen = new Splash();
prg.MainForm = new Form1();
prg.Run(args);
}
}
}

您必须添加对 Microsoft.VisualBasic 的引用才能执行此操作。

Splash 表单代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication2
{
public partial class Splash : Form
{
public Splash()
{
InitializeComponent();
}
}
}

预先感谢您的帮助。

最佳答案

啊,您正在使用 Visual Basic Appplication Framework 来运行启动画面?尝试这个。这是来自快速表单应用程序 - 请注意,我将所有名称和命名空间保留为默认值,因此您可能需要为您的代码更改它。该项目只有两种形式。 Form2 是初始屏幕。我在其上嵌入了背景图像,以确保它可以正常弹出并且我可以将它与 Form1 区分开来。

我在我的项目中添加了对 .NET Microsoft.VisualBasic 的引用。

这是来自program.cs文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using Microsoft.VisualBasic.ApplicationServices;

namespace WindowsFormsApplication1
{
static class Program
{
[STAThread]
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
new MyApp().Run(args);
}
}
public class MyApp : WindowsFormsApplicationBase
{
protected override void OnCreateSplashScreen()
{
this.SplashScreen = new Form2();
}
protected override void OnCreateMainForm()
{
// Do your initialization here
//...
System.Threading.Thread.Sleep(5000); // Test
// Then create the main form, the splash screen will automatically close
this.MainForm = new Form1();
}
}
}

我知道这与您使用的不同,但它似乎有效。

关于c# - 启动画面不会隐藏 - 使用 Microsoft.VisualBasic 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3253020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com