AGB  ·  Datenschutz  ·  Impressum  







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

zweite Unit

Ein Thema von alexanderbender · begonnen am 2. Mär 2013 · letzter Beitrag vom 3. Mär 2013
 
Perlsau
(Gast)

n/a Beiträge
 
#3

AW: zweite Unit

  Alt 2. Mär 2013, 23:00
... wie man ein Programm in zwei Units auf teil!!!
Wo ist das Problem? Du legst eine zweite Unit an und kopierst dort die Proceduren und Functionen hinein, die du aus deiner Main-Unit auslagern möchtest. Dabei kannst du das grundsätzlich auf zwei verschiedene Weisen tun: mit oder ohne Klassendeklaration.

1. Ohne Klassendeklaration
Delphi-Quellcode:
unit Ausgelagert;

interface

procedure Ausgelagert_1;

implementation

procedure Ausgelagert_1;
begin

end;

end.
Und nicht vergessen, in die USES-Klauses deiner Haupt-Unit die Unit Ausgelagert einzubinden.

2. Mit Klassendeklaration
Delphi-Quellcode:
unit Ausgelagert;

interface

Type
    TAusGel = class

    private

    public
      constructor create();
      destructor destroy; override;

      procedure Ausgelagert_1;

    end;

implementation

procedure TAusGel.Ausgelagert_2;
begin

end;

end.
Um die Klasse in der neuen Unit verwenden zu können, mußt du in deiner Haupt-Unit eine globale Variable des Typs TausGel anlegen und damit ein neues Objekt erzeugen:
Delphi-Quellcode:
...
implementation

var
   Auslagerung : TAusGel;

procedure TMainUnitFormCreate(Sender: TObject);
begin
   Auslagerung := TAusGel.Create;
end;

...

procedure TMainUnit.FormClose(Sender: TObject);
begin
   Auslagerung.Free;
   // Oder auch: FreeAndNil(Auslagerung);
end;
So hast du Zugriff auf Klasse:

Delphi-Quellcode:
procedure TMainUnit.Button1Click(Sender: TObject);
begin
   Auslagerung.Ausgelagert_1;
end;
  Mit Zitat antworten Zitat
 

 

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 16:44 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