Gerade lernen C# und lief über ähnliche Situation. aber eine Lösung gefunden, die ich denke, kann helfen. Sie können dies vor langer Zeit herausgefunden haben. Dies wird von Beginn eines neuen Projekts sein, aber Sie können es in jedem verwenden.
1) Starten Sie ein neues Projekt.
2) Gehen Sie zu Projekt, dann Neues Windows-Formular, wählen Sie Windows-Formular und nennen Sie Splash.
3) Größe, Hintergrund, Text usw. nach Wunsch einstellen.
4) Setzen Sie unter Eigenschaften des Formulars Splash.cs die Option Startposition: CenterScreen und TopMost: true
5) form1 hinzufügen "using System.Threading;"
6) form1 unter class hinzufügen "Splash splashscreen = new Splash();"
7) form1 hinzufügen "splashscreen.Show();" und "Application.DoEvents();"
8) form1 unter Events>>Focus>>Activated hinzufügen "Thread.Sleep(4000); splashscreen.Close();"
9) Splash.cs unter "Public Splash" hinzufügen "this.BackColor = Color.Aqua;" /kann jede Farbe verwenden
10) Dies ist der Code für Form1.cs
public partial class Form1 : Form
{
Splash splashscreen = new Splash();
public Form1()
{
InitializeComponent();
splashscreen.Show();
Application.DoEvents();
}
private void Form1_Activated(object sender, EventArgs e)
{
Thread.Sleep(4000);
splashscreen.Close();
}
}
11) Dies ist der Code in Splash.cs
public partial class Splash : Form
{
public Splash()
{
InitializeComponent();
this.BackColor = Color.Aqua;
}
}
12) Ich habe festgestellt, dass der Bildschirm nicht so lange oben bleibt, bis das erste Formular aktiviert ist, wenn man NICHT im Splash etwas tut. Der Thread Count lässt den Splash nach x Sekunden verschwinden, Ihr Programm ist also normal.
0 Stimmen
Übrigens kann ich für dieses Fenster keinen Eigentümer festlegen, da dieses Fenster vor allen anderen Fenstern erstellt wird (es ist der Startbildschirm der Anwendung). Ref: stackoverflow.com/questions/2463149/
0 Stimmen
Auch wenn die Frage schon etwas älter ist, muss ich doch diese Anmerkung machen... Ihre Frage und der Kommentar sind ziemlich seltsam, Sie wollen Ihr Fenster oben in Ihrer Anwendung haben, aber in Ihrem Kommentar geben Sie an, dass keine Anwendung läuft, da es das erste Fenster (Startbildschirm) ist, also wie kann Ihr Fenster oben auf einer nicht vorhandenen Anwendung sein?!? Ich frage mich, wie um alles in der Welt diese Frage 16 positive Bewertungen erhalten konnte.
1 Stimmen
Wenn die App startet, gibt es kein anderes Fenster, sondern das Hauptfenster erscheint kurz danach und muss hinter dem Startbildschirm bleiben, bis alles geladen ist.
1 Stimmen
Warum dann nicht den Splashscreen als erstes Fenster starten lassen und wenn er fertig ist, das Hauptfenster öffnen? Ändern Sie einfach die StartupUri der Anwendung auf den Splashscreen. ( msdn.microsoft.com/de-us/library/ )