Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wie erzeuge ich ein MDI ChildForm2 aus MDI Childform1 per Button or main Menu ? (https://www.delphipraxis.net/159478-wie-erzeuge-ich-ein-mdi-childform2-aus-mdi-childform1-per-button-main-menu.html)

Gandimann 29. Mär 2011 23:52

Wie erzeuge ich ein MDI ChildForm2 aus MDI Childform1 per Button or main Menu ?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Halo Freunde und Experte,
habe eine Frage und bitte euch um HILFE....8-)

Ich habe mit MDI-Fenster follgende Probleme:

1. Wenn ich New-> ChildForm1 klicke es kommt zwar childform1 aber nach schliesen des Fensters wenn ich nochmals über new-> Childform1 abrufe es funktionier nicht (passiert nichts):evil:
2. Ich versuche das jede MDI-ChildForm nur einmal erscheint.:cyclops:

3. Wie kann ich von Childform aus an Hauptmenu zugreifen z.B. wenn ich auf ein Button auf Childform1 klicke dann es soll NEW->ChildForm3 ansteuren.:oops:

Thanx in advance :-D

ps: sorry for my bad deutsch.

Als Anhangsdatei ist mein MDI-Example..bitte kontrollieren.

Sir Rufo 30. Mär 2011 00:12

AW: Wie erzeuge ich ein MDI ChildForm2 aus MDI Childform1 per Button or main Menu ?
 
Wenn das ChildForm geschlossen wird, dann wird dieses ja auch aus dem Speicher geworfen
Delphi-Quellcode:
procedure TChildForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  action :=caFree;
end;
Das ist ja soweit korrekt, aber die Variable ChildForm1 hat immer noch einen Wert <> nil
Versuch es mal damit:
Delphi-Quellcode:
procedure TChildForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  action :=caFree;
  // ChildForm1 auf nil setzen
  If ChildForm1 = Self then
    ChildForm1 := Nil;
end;
Besser wäre es sogar diesen Code im Event OnDestroy zu platzieren.

Gandimann 30. Mär 2011 00:26

AW: Wie erzeuge ich ein MDI ChildForm2 aus MDI Childform1 per Button or main Menu ?
 
Zitat:

Zitat von Sir Rufo (Beitrag 1091880)
Wenn das ChildForm geschlossen wird, dann wird dieses ja auch aus dem Speicher geworfen
Delphi-Quellcode:
procedure TChildForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  action :=caFree;
end;
Das ist ja soweit korrekt, aber die Variable ChildForm1 hat immer noch einen Wert <> nil
Versuch es mal damit:
Delphi-Quellcode:
procedure TChildForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  action :=caFree;
  // ChildForm1 auf nil setzen
  If ChildForm1 = Self then
    ChildForm1 := Nil;
end;
Besser wäre es sogar diesen Code im Event OnDestroy zu platzieren.

THAAAANK YOUUUUUUUUU....:-D:-D:-D:-D:-D:-D:-D
for your kind help.You are great .
Es hat super funktioniert.:thumb:

Nun bleibt nur noch Problem #3 bestehen ob ich da einen Hinweis bekommen kann, wäre ich sehr dankbar dafür.


:):):):):)

nuclearping 30. Mär 2011 08:50

AW: Wie erzeuge ich ein MDI ChildForm2 aus MDI Childform1 per Button or main Menu ?
 
Delphi-Quellcode:
unit ChildForm1;

interface

...

implementation

uses
  ...,
  MainForm;

...

procedure TChildForm1.Button1Click(Sender: TObject);
begin
  YourMainFormClass.MenuNewClick(Self);
end;
So?

Gandimann 30. Mär 2011 13:40

AW: Wie erzeuge ich ein MDI ChildForm2 aus MDI Childform1 per Button or main Menu ?
 
Zitat:

Zitat von nuclearping (Beitrag 1091918)
Delphi-Quellcode:
unit ChildForm1;

interface

...

implementation

uses
  ...,
  MainForm;

...

procedure TChildForm1.Button1Click(Sender: TObject);
begin
  YourMainFormClass.MenuNewClick(Self);
end;
So?

:( geht leider nicht :(


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:37 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-2025 by Thomas Breitkreuz