Hét vraag- en antwoordplatform van Nederland

Hoe maak ik een splashscreen met knoppen in c#?

Ik maak een programma in c# .net, het is een collectie van verschillende programma's en ik wil er een opstart scherm voor. ik heb al een design met buttons en alles. nu wil ik graag weten hoe ik krijg dat eerst dat scherm start en als je dan op een knop klikt dat het programma zich sluit en het ander opent. Hoe doe ik dit?

Verwijderde gebruiker
10 jaar geleden
Geef jouw antwoord
0 / 2500
Geef Antwoord

Antwoorden (1)

Er vanuitgaande dat je een WinForms applicatie maakt, is het vrij eenvoudig te bouwen. Elk scherm is een form, zo ook het startscherm. In je program.cs zie je de volgende code:

static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}

Je ziet dat Form1 wordt gestart en als die wordt gesloten is je applicatie klaar. Als je nu een SplashForm maakt, waarin het volgende Form (van de keuze van de gebruiker) wordt klaargezet in een property "TargetForm", kun je deze als volgt starten, nadat het splashform is gesloten:

static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
var splash = new SplashForm();
Application.Run(splash);

if (splash.TargetForm != null)
{
Application.Run(splash.TargetForm);
}
}

In je splashform zet je bv. twee knoppen die FormA of FormB aanmaken:

public Form TargetForm = null;

private void button1_Click(object sender, EventArgs e)
{
TargetForm = new FormA();
Close();
}

private void button2_Click(object sender, EventArgs e)
{
TargetForm = new FormB();
Close();
}

Ik hoop dat dit is wat je bedoelt. Een normaal splash screen verdwijnt automatisch als de applicatie geladen is, maar dat is denk ik niet wat je zoekt toch?
Verwijderde gebruiker
10 jaar geleden
Deel jouw antwoord
0 / 2500
Geef Antwoord
logo van Kompas Publishing

GoeieVraag.nl is onderdeel van Kompas Publishing