Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Form dublizieren ? (https://www.delphipraxis.net/44002-form-dublizieren.html)

svenwel.de 11. Apr 2005 22:12


Form dublizieren ?
 
Guten Abend, gibt es ne möglichkeit eine Form zu dublizieren ?
Ich bekomm ständig nen Fehler beim dublizieren, dass schon eine komponente mit dem gleichen Namen exsistiert.

Delphi-Quellcode:
[....]
  with Form3.Create(self) do
  begin
   
    caption:='bla';

    show;
  end;
[....]
gibt es noch ne bessere möglichkeit, eine Form zu dublizieren ohne solch einen Fehler ?

mfg

malo 11. Apr 2005 22:13

Re: Form dublizieren ?
 
Versuch mal ein Array of TForm zu erstellen, das müsste gehen ;)

Robert_G 11. Apr 2005 22:23

Re: Form dublizieren ?
 
Zitat:

Zitat von malo
Versuch mal ein Array of TForm zu erstellen, das müsste gehen ;)

Hä? :shock:
Vielleicht kannst du das ja auchg mit 500 verschachtelten GoTos lösen. :lol:
Zitat:

Zitat von svenwel.de
Guten Abend, gibt es ne möglichkeit eine Form zu dublizieren ?
Ich bekomm ständig nen Fehler beim dublizieren, dass schon eine komponente mit dem gleichen Namen exsistiert.

Delphi-Quellcode:
[....]
  with Form3.Create(self) do
  begin
   
    caption:='bla';

    show;
  end;
[....]
gibt es noch ne bessere möglichkeit, eine Form zu dublizieren ohne solch einen Fehler ?

mfg

Dein Problem ist, dass du einen Constructor an einer Instanz ausführst.
Stelle ihn dir mehr wie eine class function vor, die dir eine neue Instanz liefert.
Schau dir mal das Beispiel an. ;)
Delphi-Quellcode:
with TDeineFormKlasse.Create(nil) do
try
  ShowModal();
  DoSomething();
finally
  Free();
end;

svenwel.de 11. Apr 2005 22:31

Re: Form dublizieren ?
 
:wiejetzt:
Also das hab ich jetzt nicht ganz verstanden :?:

Robert_G 11. Apr 2005 22:40

Re: Form dublizieren ?
 
Ups, .. naja...
Das sollte heißen, dass du einen Constructor nicht an deinem Form sondern an der Klasse des Foms anwenden musst. ;)

svenwel.de 11. Apr 2005 22:44

Re: Form dublizieren ?
 
ah ich verstehe ... denk ich mal

Also ich muss dann die objekte von der Form3 der neuen form "vererben" so in etwas

Delphi-Quellcode:
{ .... }
With TForm.Create({Form3.Objekte?}) do
begin
{....}
end;
:gruebel:

Robert_G 11. Apr 2005 22:48

Re: Form dublizieren ?
 
Deine Fensterklasse heißt wohl TForm3, oder? :zwinker:
Dann würde eine Instanz davon mit TForm3.Create(nil) angelegt werden.
So und und suchst du dir schnurstracks das nächste Anfängertutorial. ;)

malo 11. Apr 2005 23:02

Re: Form dublizieren ?
 
Zitat:

Zitat von Robert_G
Zitat:

Zitat von malo
Versuch mal ein Array of TForm zu erstellen, das müsste gehen ;)

Hä? :shock:

:oops: Hab wohl das Problem falsch gedeutet :mrgreen:

Hansa 11. Apr 2005 23:20

Re: Form dublizieren ?
 
Zitat:

Zitat von svenwel.de
ah ich verstehe ... denk ich mal

Hört sich aber nicht sehr überzeugend an. :shock:

Zitat:

Zitat von Robert_G
So und und suchst du dir schnurstracks das nächste Anfängertutorial.

Und Du am besten gleich mit. :mrgreen:

Er will doch wohl zuerst mal die Lösung des konkreten Problems. Das aktuelle hier ist aber in Delphi dermaßen einfach gelöst, daß es keine tiefgehenden theoretischen Kenntnisse erfordert. 8)

@Sven : ich gehe davon aus, daß die erste Form so ist, wie sie sein soll. Dann klicke sie mit der rechten Maustaste an und sage "zur Objektablage hinzufügen". Speichere sie aber vorher unter einem guten Namen ab. Tja, das wars. Alle Steuerelemente und dsefinierten Ereignisse der Form sind dann wiederverwertbar.

Die 2. Form kriegst du dann dadurch hin : Datei -> neu -> Weitere. Die 1. Form suchen und unten kopieren auswählen. Schon hast Du eine 2. Form, die heißt dann eben <TMeineForm1>. Und diese hat vorerst alle Eigenschaften der ersten !! Was danach damit der passsiert ist alleine deine Sache.

Da geht noch sehr viel mehr mit, aber das hat jetzt nicht viel Zweck, es zu erklären. 8)

svenwel.de 11. Apr 2005 23:26

Re: Form dublizieren ?
 
#Hanso

Hi Saarlänna ;)
Ehmm, die Form muss ja dynamisch dubliziert werden beim auslösen einer bestimmten prozedur. Das war das Problem was aber nun gelöst ist. Jetzt werd ich erstmal die WinApi durchklappern um rauszufinden, wie ich mit diesem dyn. erstellen form arbeiten kann, denn im source kann ich ja keine form ansprechen, die noch gar nicht exsistiert

grüße


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:06 Uhr.
Seite 1 von 2  1 2      

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