![]() |
MDIChildren in einen Modalen Fenster ?
Hallo. Ich arbeite mit MDIChildren MDI. Nun Möchte ich eine MDI Fenster klonen und als MODAL aufrufen wie geht das?
|
Re: MDIChildren in einen Modalen Fenster ?
So gehe ich vor:
var neueform : TForm; begin neueform := Tf_ag.create(Self); with neueform do begin FormStyle := fsNormal; Visible := False; Height := 560; Width := 750; Showmodal; Free; end; end; Das Problem ist wenn ich diese Prozedur starte startet in Hintergrund ein Fenster, was wieder verschwindet und in f_ag gibt es eine Procedure die in Public bereich reserviert ist. die kann ich so nicht ansprechen neueform.Suche; Warum nicht? |
Re: MDIChildren in einen Modalen Fenster ?
Hy Karstadt!
Leider bin ich durch deinen Quelltext nicht ganz durchgestiegen, wäre nett, wenn du den Delphi-Code auch als solchen markierst. Anscheinend bin ich nicht der einzige, wenn ich mal beachte, dass bisher noch niemand geantwortet hat. Wenn du über deine Variable "neueform" ein MDI-Child erstellst und es dann mit neueform.Free wieder freigibts, dann ist es kein Wunder, dass dein Child nur "aufblinkt", da du es im selben Moment erstellst und wieder löscht! Nach meinem Kenntnisstant MUSS ein MDIChild auch den FormStyle 'fsMDIChild' besitzen Die Funktion SchoModal konnte ich bei meiner MDI-Anwendung ohen Exception garnicht setzen. Hast du dein Hauptformular denn überhaupt auf 'fsMDIForm' gesetzt? Gruss Robert |
Re: MDIChildren in einen Modalen Fenster ?
du musst den Formstyle MDIChild zur Laufzeit setzen, denn wenn du es im Designmodus setzt und das Fenster erzeugst, wird es sofort angezeigt. dann kannst nixmehr mit Showmodal machen.
Ich mach das so:
Delphi-Quellcode:
d.h. wenn ich auf der Hauptform das Child erzeuge ist es MDI sonst kann ich daraus ein Modales machen.
procedure TMyMDIChild.FormCreate(Sender: TObject);
begin if Owner is TtfMain then FormStyle:=fsMDIChild; end; |
Re: MDIChildren in einen Modalen Fenster ?
Mein Problem ist. Wenn ich das Fenster mit Create aufrufe wird automatisch alle Funktion die ich onActive deklariert habe abgearbeitet (onActive = aktuallisiere alle Tabellen die sich auf dem Formular befinden) dann kommt nach Create Showmodal und in diesen Fall macht delhpi noch mal on Active. somit kommt es zu diese verzögerung. :cry:
|
Re: MDIChildren in einen Modalen Fenster ?
Delphi-Quellcode:
Das funktioniert einwandfrei! Nun habe ich ein anderes Problem
procedure TMyMDIChild.FormCreate(Sender: TObject);
begin if Owner is TtfMain then FormStyle:=fsMDIChild else showmodal; end; Bevor ich das Fenser aufrufe will ich die SQL eingenschaft einer Tabelle ändern... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:52 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