Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Create Prozedur von Unit ändern (https://www.delphipraxis.net/21940-create-prozedur-von-unit-aendern.html)

daniel8520 10. Mai 2004 14:38


Create Prozedur von Unit ändern
 
Hallo zusammen!

Ich hab da mal ne Frage!
Ich hab mir jetzt ne eigene kleine Klasse gebaut (in einer eigenen Unit). So, ich baue diese Klasse dann in meine Main-Unit ein, und weise einer Variablen die Klaase zu. Bevor ich nun mit meiner neuen Klasse in der neuen Unit arbeiten kann, muss ich ja folgendes machen:
Delphi-Quellcode:
uses Klasse1
var Vari: TKlasse1
[...]
procedure TMainForm.Button1Click(Sender: TObject);
begin
   Vari := TKlasse1.Create;
end;
Mein Frage richtet sich nun daran, wie ich die Create Prozedur der neuen Unit, oder der Variablen ändern kann. Ich möchte nämlich, dass nach dem Create in der neuen Unit etwas ausgeführt wird, und möchte nicht alle Anweisungen beim Button1Click manuell aussprechen.

Kann man mich verstehen?
Kann mir jemand helfen?

alcaeus 10. Mai 2004 14:44

Re: Create Prozedur von Unit ändern
 
Du musst in TKlasse1 eine Funktion der Art
Delphi-Quellcode:
constructor Create(evtl. Parameter);
implementieren. Wenn ich mich noch ganz gut erinnere, gehört die Deklaration in den Public Teil. Die erste Zeile der Prozedur muss dann schlicht und einfach
Delphi-Quellcode:
inherited;
sein.

SirThornberry 10. Mai 2004 14:45

Re: Create Prozedur von Unit ändern
 
willst du in deiner Klasse noch was ändern oder etwas fürs form1??

wenn du in er klasse noch was beim create machen willst dann brauchst du einfach nur den contstructor überschreiben (kann jetzt kein source posten weil ich nicht weiß wovon du du deine neue Klasse ableitest). Wenn das was du nach dem Create machen willst nix mit der Klasse zu tun hat dann wirde ich ein OnCreate ereignis machen...

Wäre nicht schlecht wenn du wenigstens mal den Klassendefinition postest - also
Delphi-Quellcode:
 TYourClass = class(TDasWillschWissen)

daniel8520 10. Mai 2004 14:50

Re: Create Prozedur von Unit ändern
 
Meine Klasse ist ne ganz simple:

Delphi-Quellcode:
TKlass1 = class
@alcaeus
Kann ich dann nach der ersten Zeile noch andere Befehle anfügen?

alcaeus 10. Mai 2004 14:53

Re: Create Prozedur von Unit ändern
 
Na klar, das ist ja der Sinn und Zweck der ganzen Sache, ich hätte das vielleicht dazuschreiben sollen.

daniel8520 10. Mai 2004 15:17

Re: Create Prozedur von Unit ändern
 
Das funzt aber nicht ganz so wie du es gesagt hast!
So geht es:
Delphi-Quellcode:
contructor Create;
begin
inherited Create;
[...]
end;
Danke für eure/deine Hilfe!
:dp:

alcaeus 10. Mai 2004 15:23

Re: Create Prozedur von Unit ändern
 
:oops:
Ich sollte mal wieder anfangen, eigene Klassen zu schreiben.

Muetze1 10. Mai 2004 15:40

Re: Create Prozedur von Unit ändern
 
Moin!

Beispiel mit einer einfachen Klasse und einer internen Variable, die beim Create() auf 5 initialisiert wird.

Delphi-Quellcode:
Unit Klasse1;

Interface

Type
  TKlasse1 = Class
  Private
    fInterneVar : Integer;
  Public
    Constructor Create; Virtual;
  End;

Implementation

Constructor TKlasse1.Create;
Begin
  Inherited Create;

  fInterneVar := 5;
End;

End.
MfG
Muetze1


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:22 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