![]() |
Formen öffnen und schließen
Ich habe folgendes Problem:
ich möchte in der Form1 über Buttons wählen, ob ich Form2 oder Form 3 öffnen möchte. Nun habe ich mir folgendes überlegt:
Delphi-Quellcode:
form1.close;
form2.show; end; doch irgendwie schließt sich dann alles wenn Form1 geschlossen wird. Warum? Muss man das irgendwie unabhängig machen? Dann wollte im Gegenzug wieder, dass wenn Form2 oder Form3 geschlossen wird wieder Form1 erscheint und man erneut wählen kann. Vielen Dank schonmal für eure antworten. :-D |
Re: Formen öffnen und schließen
Wenn das Hauptformular geschlossen wird, dann schließt du damit das Programm.
Wie wäre es mit Form1.Hide, du willst doch Form1 nicht schließen sondern verstecken. ;-) Um Form1 danach wieder anzuzeigen könntest du das so machen:
Delphi-Quellcode:
Meistens ist es aber nicht besonders sinnvoll das Hauptfenster auszublenden, da das zu Verwirrung führen kann.
Form1.Hide;
Form2.ShowModal; Form1.Show; |
Re: Formen öffnen und schließen
Vielen Dank für die schnelle antwort! Läuft!
Aber was heißt form2.showmodal; ? Das gibt es bei mir eine Fehlermeldung: Aus einem sichtbaren kann kein modales gemacht werden. Aber wenn ich es weg lasse läuft es auch. :?: |
Re: Formen öffnen und schließen
Zitat:
Zitat:
|
Hi habe das selbe Problem, aber ich weiß nicht warum das Fenster schon vorher sichtbar war, soll ich auf die OnCreate einfach nen Form2.Free setzten, oder wäre das nicht so gut?
|
Re: Formen öffnen und schließen
Ok, das klappt nicht, weiß jemand was?
|
Re: Formen öffnen und schließen
Setz mal in OnForm Create ein showMessage('Form geht auf'), oder geh mit dem Debugger durch und suche nach dem ersten aufruf von Form2
|
Re: Formen öffnen und schließen
Bisschen Quellcode wäre nicht schlecht... :glaskugel:
|
Re: Formen öffnen und schließen
Delphi-Quellcode:
procedure TForm1.Button7Click(Sender: TObject);
var FDialog :TFDialog; begin name:=EName.Text; Mediaplayer1.Stop; Mediaplayer2.Play; Form1.Caption:=EName.Text; Button7.visible:=False; EName.visible:=False; Label1.visible:=False; Panel5.visible:=False; save := TIniFile.Create('.\save\SaveFile.ini'); //try if save.SectionExists(name)=True then begin if MessageDlg('Kaktus existiert bereits, Laden oder anderen Namen eingeben! Laden?',mtConfirmation,mbYesNo,0)=mrYes then begin; sek:=save.ReadInteger(name,'ZeitSek',0); min:=save.ReadInteger(name,'ZeitMin',0); h:=save.ReadInteger(name,'ZeitH',0); hunger:=save.ReadInteger(name,'Hunger',30); durst:=save.ReadInteger(name,'Durst',30); laune:=save.ReadInteger(name,'Laune',50); alter:=save.ReadInteger(name,'Alter',0); gesundheit:=save.ReadInteger(name,'Gesundheit',100); end else begin FDialog:=TFDialog.Create(self); FDialog.ShowModal; name:=FDialog.ENeuName.Text; end; end; //finally save.Free; LSekunden.caption:=IntToStr(sek); LMinuten.caption:=IntToStr(min); LStunden.caption:=IntToStr(h); LAHunger.caption:=IntToStr(hunger); LADurst.caption:=IntToStr(durst); LALaune.caption:=IntToStr(laune); LAAlter.caption:=IntToStr(alter); LAGesundheit.caption:=IntToStr(gesundheit); frame:=0; EssenF:=0; TrinkenF:=0; SpielenF:=0; PName.caption:=EName.Text; end; das is die Procedur an ders liegen muss, weil ich noch in ner anderen eine andere Form aufrufe und das klappt, auch modal... |
Re: Formen öffnen und schließen
Ps: Leider weiß ich nicht wie man mit dem Debugger umgeht...
|
Re: Formen öffnen und schließen
Ps: Hier gibt es einen "Edit"-Button. ;)
|
Re: Formen öffnen und schließen
PPS: Anstatt meine nicht Forenkomformen posts anzumerkeln, könntest du mir auch den Umgang mit dem Debuger erklären :roll: :o
|
Re: Formen öffnen und schließen
Zitat:
![]() |
Re: Formen öffnen und schließen
hahahahahaha ... Toller Nutzer macht doch immer wieder Freude :thumb:
|
Re: Formen öffnen und schließen
Tja, so bin ich. ;)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz