AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TForm1.FormCreate -> Form2.Show;

Ein Thema von StanY · begonnen am 11. Aug 2004 · letzter Beitrag vom 13. Aug 2004
Antwort Antwort
Seite 2 von 3     12 3      
bttb930

Registriert seit: 6. Okt 2003
372 Beiträge
 
#11

Re: TForm1.FormCreate -> Form2.Show;

  Alt 11. Aug 2004, 15:40
Vertausch doch einfach die Application.CreateForm-Befehle, so dass zuerst Form2 erstellt wird und dann Form1.

Dann wird auch automatisch Form2 beim Programmstart angezeigt.

Allerdings wird das Programm auch beendet wenn Form2 geschlossen wird.
  Mit Zitat antworten Zitat
Benutzerbild von lume96
lume96

Registriert seit: 14. Sep 2003
Ort: Rognac/Marseille - Frankreich
128 Beiträge
 
Delphi 7 Professional
 
#12

Re: TForm1.FormCreate -> Form2.Show;

  Alt 11. Aug 2004, 15:46
Oder
Application.CreateForm(Tform2, Form2); aus der projektdatei rausnehmen und

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
   Form2 := TForm2.Create(self);
   Form2.Show;

end;
benutzen.

Sollte eigentlich auch funktionieren.
Lutz Meyer
  Mit Zitat antworten Zitat
Benutzerbild von SleepyMaster
SleepyMaster

Registriert seit: 18. Mai 2003
634 Beiträge
 
#13

Re: TForm1.FormCreate -> Form2.Show;

  Alt 11. Aug 2004, 16:11
Oder

Delphi-Quellcode:
procedure TForm2.FormCreate(Sender: TObject);
begin
  Show;
end;
  Mit Zitat antworten Zitat
StanY

Registriert seit: 6. Aug 2004
145 Beiträge
 
#14

Re: TForm1.FormCreate -> Form2.Show;

  Alt 11. Aug 2004, 21:07
Vielen dank für die schnelle und kompetente Hilfe. Ich denke die letzte Möglichkeit werde ich verwenden, da es so sein soll, dass das Programm halt nur beendet werden soll, wenn Form1 beendet werden soll.

Ansonsten, also, wenn das nicht geht, werde cih wohl auf die timer zurückgreifen.

Danke.

edit: @SleepyMaster: Tut mir leid, dich habe ich ganz übersehen :/.

Also, da mit die Timer-Variante doch nicht mehr gefällt. Deins geht auch nicht. Dieselbe Fehlermeldung:



Delphi-Quellcode:
procedure TfrmMain.FormShow(Sender: TObject);
begin
  frmObjTreeView.Show;
end;
Fehler:
Project mdc.exe raised exception class EAccsessViolation with Message 'Access violation at address 00445BEA in module 'mdc.exe'. Read of address 000002F4'. Process stopped. Use Step or Run to continue.
|OK| |HELP|
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: TForm1.FormCreate -> Form2.Show;

  Alt 11. Aug 2004, 22:46
Zitat von SleepyMaster:
Oder

Delphi-Quellcode:
procedure TForm2.FormCreate(Sender: TObject);
begin
  Show;
end;
das geht problemlos...

Aenogym
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
StanY

Registriert seit: 6. Aug 2004
145 Beiträge
 
#16

Re: TForm1.FormCreate -> Form2.Show;

  Alt 11. Aug 2004, 22:51
Aber wie mache ich es, dass die anderen Formen/Forms auch erstellt werden, wenn ich frmMain erstelle, also, das Programm starte?

Einafch nur in Form2.FormCrate das reinschreiben geht nämlich net :/.
  Mit Zitat antworten Zitat
StanY

Registriert seit: 6. Aug 2004
145 Beiträge
 
#17

Re: TForm1.FormCreate -> Form2.Show;

  Alt 13. Aug 2004, 14:01
Weiß niemand eine Antwort *sry wegen des Doppelposts* :/
  Mit Zitat antworten Zitat
teebee

Registriert seit: 17. Jan 2003
Ort: Köln
460 Beiträge
 
Delphi 6 Professional
 
#18

Re: TForm1.FormCreate -> Form2.Show;

  Alt 13. Aug 2004, 14:37
Zitat von StanY:
Aber wie mache ich es, dass die anderen Formen/Forms auch erstellt werden, wenn ich frmMain erstelle, also, das Programm starte?
Das kannst Du in den Projektoptionen einstellen, per Default werden aber alle Forms beim Programmstart erzeugt.
Wenn Du sie auch noch alle anzeigen willst, rufe das entsprechende FormX.Show in der Projektdatei nach dem CreateForm auf.

Gruß, teebee
  Mit Zitat antworten Zitat
Benutzerbild von lume96
lume96

Registriert seit: 14. Sep 2003
Ort: Rognac/Marseille - Frankreich
128 Beiträge
 
Delphi 7 Professional
 
#19

Re: TForm1.FormCreate -> Form2.Show;

  Alt 13. Aug 2004, 14:48
Hi,

Zitat von StanY:
Aber wie mache ich es, dass die anderen Formen/Forms auch erstellt werden, wenn ich frmMain erstelle, also, das Programm starte?

Einafch nur in Form2.FormCrate das reinschreiben geht nämlich net :/.
Zwei Möglichkeiten :
1) über das Menü Projekt/Optionen (frei aus dem Französischen übersetzt, hab keine deutsche Delphi-Version)

2) Manuell in der Projektdatei : (anzeigen durch Menü Projekt/Source anzeigen (wieder frei aus dem Französischen)). Die Projektdatei könnte dann wie folgt aussehen :

Delphi-Quellcode:
program test;

uses
  Forms,
  main in 'main.pas{Form1},
  Unit2 in 'Unit2.pas{Form2};

{$R *.RES}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(TForm2, Form2);
  Application.Run;
end.
Wie man sehen kann, werden zuerst die Forms erstellt, dann Application.Run aufgerufen.

Der Form.Show event des MainForms wird erst nach Application.Run aufgerufen, und zu dem Zeitpunkt ist Form2 schon erstellt.

Somit sollte bei einem :
Delphi-Quellcode:
procedure TForm1.FormShow(Sender: TObject);
begin

   Form2.Show;

end;
auch keine AccessViolation mehr auftreten. Die tritt nämlich 'nur' auf, wenn Du Form2.Show aufrufst, bevor der Form2 estellt wurde.

Hab das bei mir (Delphi 7 Pro) noch mal kurz getestet und es funktioniert einwandfrei.

MfG,
Lutz
Lutz Meyer
  Mit Zitat antworten Zitat
StanY

Registriert seit: 6. Aug 2004
145 Beiträge
 
#20

Re: TForm1.FormCreate -> Form2.Show;

  Alt 13. Aug 2004, 15:25
Vielen Dank. Funktioniert Einwandfrei .
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:39 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