Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Seltsames Verhalten vom Forms (https://www.delphipraxis.net/127793-seltsames-verhalten-vom-forms.html)

5etH 19. Jan 2009 07:53


Seltsames Verhalten vom Forms
 
Hallo Zusammen,

Ich habe einen Merkwürdigen Fehler beim Erzeugen von Forms. Folgender Fehler Tritt auf: ich arbeite mit Mehreren Dynamisch Erzeugten Forms. Ich kann in den Optionen Festhalten Welche Forms ich beim Starten des Programms schon erzeugen möchte. z.B. form 1 2 und 3, wenn ich diese auch in der Reinfolge erzeuge, kann ich form 2 und 3 ohne Probleme schließen, schließe ich aber form1 zuerst so schließt es 2 und 3 gleich mit.

Hier die entsprechenden Code Zeilen:




ich habe leider keine Ahnung woher das kommt und hoffe das ihr mir helfen könnt

Delphi-Quellcode:

procedure TForm1.FormShow(Sender: TObject);
begin
if first then // Variable zur Abfrage ob Programm Gestartet wurde um 2. aufruf zu vermeiden
begin
first := false;
if memo2.Lines[6] = '-1' then // Memo2 Liest eine OPT.INI ein
begin
  button3.click;
end;
if memo2.Lines[7] = '-1' then
begin
  button4.click;
end;
if memo2.Lines[8] = '-1' then
begin
  button9.click;
end;
if memo2.Lines[9] = '-1' then
begin
  button6.click;
end;
if memo2.Lines[10] = '-1' then
begin
  button5.click;
end;
if memo2.Lines[11] = '-1' then
begin
  if button1.visible then
  begin
    button1.click;
  end;
  button11.click;
end;
if memo2.Lines[13] = '-1' then
begin
Chat1Click(self);
end;
end;
end;

//Das liegt hinter Den Buttons speziefisch für die Forms
procedure TForm1.Button3Click(Sender: TObject);
begin
  if not s3 then
  begin
  s3 := true;
  Application.CreateForm(TForm3, Form3);
  form3.show;
  end;
end;

//Und auf jedem Fenster onClose
procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);
begin
form1.s3 := false;
self.destroy;
end;
Wenn ich die Forms aber Einzeln per Klick öffne tritt dieser Fehler nicht auf

In vollster Hoffnunf :dp:
Manuel

nahpets 19. Jan 2009 08:22

Re: Seltsames Verhalten vom Forms
 
Hallo,

schau mal, welches Formular in Application.MainForm steht, das ist das Hauptformular des Programmes und sorgt beim Schließen dafür, dass das Programm beendet wird.

NormanNG 19. Jan 2009 08:26

Re: Seltsames Verhalten vom Forms
 
Hi,

der erste Aufruf von
Delphi-Quellcode:
Application.CreateForm(..., ...);
bestimmt, welche Form als "Mainform" verwendet wird...

Sobald diese Form geschlossen wird, beendet sich das Programm
und schließt damit alle ggf. noch offenen Fenster.

5etH 19. Jan 2009 08:29

Re: Seltsames Verhalten vom Forms
 
Also das meinform ist ein Anderes und in dem Mainform erzeuge ich die Form1 2 und 3 wenn ich form1 dann schließe schließ es form 2 und 3 aber nicht das mainform ... zur info form1 <> mainform

5etH 19. Jan 2009 08:46

Re: Seltsames Verhalten vom Forms
 
ich habe aber jetzt festgestellt das wenn ich den selben ablauf der on show liegt auf einen button lege und ihn dann klicke, dass dann der Fehler nicht kommt... also wo muss ich dann den ablauf hinlegen das er nicht mit dem erzeugen des MainForms in die quere kommt ....

5etH 19. Jan 2009 08:56

Re: Seltsames Verhalten vom Forms
 
okay .... wenn nachdenken hilft ^^

also habe jetzt einfach den Ablauf in den Projektquelltext geschrieben und jetzt geht es ^^ und somit ist sichergestellt das das mainform als erstes komplett fertig ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz