Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Funktionen in Units auslagern (https://www.delphipraxis.net/29187-funktionen-units-auslagern.html)

CepheidenX 5. Sep 2004 12:22


Funktionen in Units auslagern
 
Hi,

Ich habe ein Fenster (TFrm1) mit diverse Komponenten (z.B. TButton1).
Nun würd ich gern Funktionen, wie z.B. TButton1.OnClick(), die nichtmehr verändert werden in eine andere Unit o.ä. auslagern.

Prinzipiell geht das ja gut mit dem INCLUDE Kompiler-Befehl. Dies hat allerdings den Nachteil, dass die "interne Sprungfuktion" (STRG + MouseOver dem entsprechenden Befehl) nicht mehr funktioniert. So ist es jedenfalls bei Delphi 6.

Gibt es eventuell noch eine andere Möglichkeit EventMethoden von Komponenten in andere Dateien auszulagern?

Gruß

mschaefer 5. Sep 2004 12:28

Re: Funktionen in Units auslagern
 
Moin, moin CepheidenX

also Du scheinst ja aus der C-Richtung zu kommen, sonst würdest Du nicht die Include Anweisung nehmen, sondern wie in Pasxal üblich die "Uses Unit" Klausel und eine externe Unit anlegen. Das
funktioniert beim Debuggen dann auch.

Würde Dir vorschlagen die Eventproceduren selbst nicht auszulagen, sondern diese nur als Procedurrumpf stehen zu lassen und in ihnen dann Proceduren aufzurufen die in einer externen Unit sind. Das ist besonders dann interessant, wenn mehrere Events die gleiche Procedure verwenden.

Grüße // Martin

CepheidenX 5. Sep 2004 12:42

Re: Funktionen in Units auslagern
 
Hi
Daran hatte ich auch schon gedacht, allerdings sind das dann immer noch sehr viele MethodenRümpfe und ist meiner Meinung nach nicht wirklich das Optimum.

Das mit dem INCLUDE funktioniert mit dem Debuggen ohne Probleme. Einzig der schnelle Aufruf bzw. das schnelle Finden beim Programmieren selber klappt nicht. Also eine OnClick methode in einer ausgelagerten Datei wird nicht gefunden wenn man z.B. im Formulardesigner auf den Button klickt.

Beim Debugger klappt das wiegesagt.

Luckie 5. Sep 2004 12:43

Re: Funktionen in Units auslagern
 
Was ist gegen die Methodenrümpfe einzuwenden? Es gibt den Code-Explorer. Und bei großen Projekten sortiere ich sie gleich wenn ich sie erstelle von Hand um, dammit zusammengehörende Methodenrümpfe untereinander liegen.

CepheidenX 5. Sep 2004 12:48

Re: Funktionen in Units auslagern
 
Im Prinzip fast nichts.
Werd das wohl auch so machen, außer jemand kennt noch eine ander Möglichkeit.

Danke

mschaefer 5. Sep 2004 18:36

Re: Funktionen in Units auslagern
 
Moin, N´abend,

Im Prinzip kann ich das auch nachvollziehen. Hätte mir desöfteren verschieden farbliche Hintergründe für bestimmte Procedurkategorien gewünscht um schneller mal in einem durchzuscrollen.
Auch echtes CodeFolding in der IDE wäre eine feine Sache. Vielleicht hat Borland da in der nächsten Version etwas einsehen mit uns. Aktuell sehe ich da auch nur die Rümpfe stehen zu lassen und wie Lucky schon sagte den Codeexplorer zu nutzen.

Grüße // Martin


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