Piszę program - Tetrisa ;)
Mój program składa się <ort>na razie </ort>z trzech formularzy.
Form1 to główna część gry.
Form2 to okno z wynikami.
Form3 to menu, z 3. opcjami : Play, Hi-Scores i Exit.
Domyślnym formularzem projektu jest Form3.
Mam problem z uruchamianiem/zamykaniem Form1.
Pod przycisk (obrazek właściwie) mam przypisany kod:
procedure TForm3.PlayBtnClick(Sender: TObject);
begin
Form3.Hide;
Form1.Show;
Form1.Timer1.Enabled:=True;
end;
Wtedy działa najlepiej, ale nie dobrze.
Okno bez problemu się wyświetla, a także zamyka.
Ale kiedy drugi raz podczas działania aplikacji nacisnę Play, to mam błąd EAccessViolation.
Przy TForm1.FormClose mam dopisane Form1.Free. Gdy tego nie było to ten sam błąd miałem przy zamykaniu okna.
Dodam, że przy Form2 już takich problemów nie mam.
Mam po prostu
Form2:=TForm2.Create(Application);
Form2.ShowModal;
Form2.Free;
i działa. Przy Form1 to samo nie działa (oczywiście w Opcjach projektu poustawiane jest dobrze).
Nie mam już żadnych pomysłów co z tym zrobić.