Cześć zrobiłem grę przygodową i po dopieszczeniu gry stwierdziłem, że należy zadbać o rzeczy typu ekran powitalny gry, na którym jest jakiś obrazek i przycisk, który jak się kliknie powoduje przejście do innego forma (Form1), Form2 jest ekranem powitalnym. Dodałem to wszystko, gra się uruchamia, działa tak jak powinna, ale po wcześniejszym wyjściu z gry (krzyżykiem), wszystko się wyłącza, ikonka znika z paska zadań, ale kompilator nadal pracuje i pokazuje te narzędzia diagnostyczne, zakończenie działania aplikacji muszę wykonać z Visual Studio, kompilator nie wyrzuca żadnego wyjątku, wszystko działa jak należy. Poniżej wstawię kod z klasy program, która jest domyślna zawsze tworzona przy tworzeniu projektu
namespace Dungeons
{
static class Program
{
/// <summary>
/// Główny punkt wejścia dla aplikacji.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new SplashScreen());
}
}
}
Tutaj zmieniłem Aplication.Run(), żeby nie była uruchamiana z klasy Dungeons tylko z tej gdzie jest ekran startowy.
Tak wygląda klasa z ekranem startowym, gdzie jest tylko przycisk Form2
public partial class SplashScreen : Form
{
public SplashScreen()
{
InitializeComponent();
title.BackColor = System.Drawing.Color.Transparent;
}
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
Dungeons dungeons = new Dungeons();
dungeons.Show();
}
}
A tak wygląda Form1, gdzie tam cała gra jest, wstawię tylko konstruktor formularza Form1
public Dungeons()
{
InitializeComponent();
this.SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint |
ControlStyles.OptimizedDoubleBuffer, true);
player30.Visible = true;
CenterToScreen();
}
Czy ktoś jest w stanie mi pomóc? Chciałbym, aby najpierw otwierał się ekran powitalny i jeżeli kliknę przycisk na ekranie powitalnym to przechodzę do okna, gdzie jest gra. Jeżeli stwierdzę, że chciałbym zakończyć grę wcześniej (czerwony krzyżyk) to wyłącza się wszystko. Szukałem na stacku itd, ale nie znalazłem. PRoszę o pomoc i jednocześnie dziękuję