| Autor |
Beitrag |
bl3nder
      
Beiträge: 58
|
Verfasst: Mo 25.09.06 12:04
Hi
Ich wuerde gerne beim Start meines Programmes zunaechst ein Formular anzeigen, worauf sich nur ein Bild befindet .
Beim Klicken auf dieses Bild soll erst dann das Hauptformular und eigentlich auch erst das ganze Programm geoeffnet werden.
Meine MainForm heisst leider Form1 ( hab das Umbenennen zu lange vergessen und jetzt zu faul alles umzschreiben  )
und das ImageForm heisst Form6
Wenn ich es so schreibe, startet sich leider trotzdem sofort die Form1 des Programms:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24:
| program Inventory;
uses Forms, Doku in 'Doku.pas' , Edit in 'Edit.pas' , Delete in 'Delete.pas' , Search in 'Search.pas' , Tausch in 'Tausch.pas' , Wait in 'Wait.pas' ;
{$R *.res}
begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.CreateForm(TForm6, Form6); Form1.Hide; Form6.Show;
Application.Run; end. |
Bei Klick auf das Bild :
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| procedure TForm6.Image1Click(Sender: TObject); begin
Application.CreateForm(TForm2, Form2); Application.CreateForm(TForm3, Form3); Application.CreateForm(TForm4, Form4); Application.CreateForm(TForm5, Form5);
Form1.Show; Form2.Hide; Form3.Hide; Form4.Hide; Form6.Close; Form6.Free; end; |
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: Mo 25.09.06 12:26
Hallo,
du kannst im Nachhinein deine MainForm in den Optionen umstellen. Wenn du das nicht möchtest, dann würde ich das Logofenster dynamisch erzeugen und nach dem Click wieder freigeben.
Die MainForm kannst du dann mit ShowMainForm := False zunächst ausblenden.
Gruß Hape!
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
bl3nder 
      
Beiträge: 58
|
Verfasst: Mo 25.09.06 12:43
Hi
Das Fenster dynamisch zu erzeugen hab ich doch probiert oder ?
Zunaechst moechte ich die MainForm verbergen mit Form1.Hide und lasse Form6 anzeigen, was sich bei Klick auf Form6 wieder aendert. Aber das funzt so nicht.
Das Umstellen der MainForm kenn ich schon, doch wuerd ich gerne das so beibehalten.
ShowMainForm := false geht bei mir nicht
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: Mo 25.09.06 13:13
Delphi-Quelltext 1:
| Application.ShowMainForm := False |
Und mit dynamisch erstellen meinte ich sowas in der Art:
Delphi-Quelltext 1: 2: 3: 4:
| Form6 := TForm6.Create(Self);
Action := caFree; |
Denn Rest würde ich wieder aus der Projektdatei entfernen!
Gruß Hape!
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
bl3nder 
      
Beiträge: 58
|
Verfasst: Mo 25.09.06 13:30
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: Mo 25.09.06 13:34
Hallo,
schön das es funktioniert. Dennoch erstellst du dein Formular 6 immer noch nicht dynamisch. Du zeigst es an und versteckst es wieder, gibt es aber nicht frei.
Gruß Hape!
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
bl3nder 
      
Beiträge: 58
|
Verfasst: Mo 25.09.06 13:54
in Image1Click dann ein Form6.Free ?
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: Mo 25.09.06 14:17
bl3nder hat folgendes geschrieben: | | in Image1Click dann ein Form6.Free ? |
Geht wohl eher nicht. Benutz dafür das Ereignis OnClose. Allerdings musst du es dann auch dynamisch erstellen, zum Beispiel in OnCreate und in den Optionen festlegen, dass es nicht automatisch erzeugt werden soll! Warum zeigst du das Formular eigentlich nicht Modal an?
Gruß Hape!
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
bl3nder 
      
Beiträge: 58
|
Verfasst: Mo 25.09.06 14:37
Wusst ich nicht
Dann mach ichs Modal
Danke
|
|
|