![]() |
Procedure aus anderer Unit aufrufen
Hallo,
ich habe 2 Units. In der 2. Unit habe ich eine Procedure ausgelagert. Ich habe die units auch in die uses-Klausel aufgenommen, aber wie kann ich auf die Procedure aus der 2.Unit zugreifen? Wenn ich "Unit2." eingebe, dann habe ich lediglich die Variablen und Konstanten zur Verfügung. Wenn die 2. Unit ein Formular hätte, wäre es ja kein Problem, denn dann bräuchte ich ja nur im "public"-Teil der type-Klausel die Procedure reinschreiben, aber meine 2. Unit hat kein Formular. Viele Grüße Sascha |
Re: Procedure aus anderer Unit aufrufen
Du musst die Prozedur aus Unit2 im Interface-Abschnitt "veröffentlichen".
|
Re: Procedure aus anderer Unit aufrufen
Du musst in der 2. Unit eine Deklaration anlegen, die die Prozedur nach außen hin verfügbar macht. Etwa in der Form:
Delphi-Quellcode:
unit Unit2;
interface procedure Test; implementation procedure Test; begin beep; end; end. |
Re: Procedure aus anderer Unit aufrufen
ja aber wie?
einfach nur public und dann die Procedure? Das geht nämlich nicht. Darum frage ich ja, wenn ich type TForm2=class(TForm) hätte, wäre es ja kein Problem, weil ich ja die Procedure dann dort hineinschreibe, aber ich habe ja nun nichts dergleichen dort stehen. EDIT: @elite: DANKE! :) EDIT2: Dadurch habe ich aber nun folgendes Problem: Ich habe Parameter bei der Procedure. z.B. TEmbeddedWB, die entsprechende Unit habe ich in Unit1 eingebunden, es wäre doch eigentlich etwas blöd, sie nun noch mal in Unit2 einzubinden. Unit1 habe ich ja im implemention-Bereich eingebunden, nur hat diese ja noch nicht abgearbeitet, wenn er im interface-Bereich ist. |
Re: Procedure aus anderer Unit aufrufen
@Elite: Das ist keine foward-Deklaration. Forward-Deklarationen werden mit dem Schlüsselwort forward gekennzeichnet. Siehe dazu auch die Online Hilfe. Desweiteren haben forward-Deklarationen einen ganz anderen Sinn und Zweck.
|
Re: Procedure aus anderer Unit aufrufen
Ok, dann eben nicht :stupid:
Habs korrigiert. |
Re: Procedure aus anderer Unit aufrufen
Nun habe ich aber immernoch folgendes Problem:
Ich habe Parameter bei der Procedure. z.B. TEmbeddedWB, die entsprechende Unit habe ich in Unit1 eingebunden, es wäre doch eigentlich etwas blöd, sie nun noch mal in Unit2 einzubinden. Unit1 habe ich ja im implemention-Bereich der 2. Unit eingebunden, nur wurde diese ja noch nicht abgearbeitet, wenn er im interface-Bereich ist. |
Re: Procedure aus anderer Unit aufrufen
Also bei mir klappt das nicht...
Ich kann da entweder den namen meiner Procedure eintragen oder procedure und den namen... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:49 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