AGB  ·  Datenschutz  ·  Impressum  







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

MDIChildren in einen Modalen Fenster ?

Ein Thema von Karstadt · begonnen am 29. Mär 2006 · letzter Beitrag vom 27. Jun 2006
Antwort Antwort
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#1

MDIChildren in einen Modalen Fenster ?

  Alt 29. Mär 2006, 07:53
Hallo. Ich arbeite mit MDIChildren MDI. Nun Möchte ich eine MDI Fenster klonen und als MODAL aufrufen wie geht das?
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#2

Re: MDIChildren in einen Modalen Fenster ?

  Alt 29. Mär 2006, 14:22
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?
  Mit Zitat antworten Zitat
robroy85

Registriert seit: 6. Nov 2004
Ort: Norderstedt
42 Beiträge
 
#3

Re: MDIChildren in einen Modalen Fenster ?

  Alt 6. Apr 2006, 10:17
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
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#4

Re: MDIChildren in einen Modalen Fenster ?

  Alt 6. Apr 2006, 10:43
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:
procedure TMyMDIChild.FormCreate(Sender: TObject);
begin
if Owner is TtfMain then
  FormStyle:=fsMDIChild;
end;
d.h. wenn ich auf der Hauptform das Child erzeuge ist es MDI sonst kann ich daraus ein Modales machen.
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#5

Re: MDIChildren in einen Modalen Fenster ?

  Alt 25. Apr 2006, 07:36
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.
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#6

Re: MDIChildren in einen Modalen Fenster ?

  Alt 27. Jun 2006, 14:06
Delphi-Quellcode:
procedure TMyMDIChild.FormCreate(Sender: TObject);
begin
if Owner is TtfMain then
  FormStyle:=fsMDIChild else showmodal;
end;
Das funktioniert einwandfrei! Nun habe ich ein anderes Problem

Bevor ich das Fenser aufrufe will ich die SQL eingenschaft einer Tabelle ändern...
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:52 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