![]() |
procedure aus andere unit direkt öffnen
Hi alle zusammen, ich frag mich heute schon den ganzen Tag wie ich eine Procedure bzw Funktion aus einer anderen Unit direkt aufrufen kann. Muss doch möglich sein?
Naje mein CT Lehrer konnte mir leider mal wieder nich weiter helfen :roll: da dacht ich, ich frag hier einfach mal. Wusste selber auch nicht genau nach was ich suchen sollte =) danke |
Re: procedure aus andere unit direkt öffnen
Moin sAibo,
einfach die Unit, in der sich die Funktion/Prozedur befindet mit in die Uses Anweisung aufnehmen. Ob Du nun die Uses Anweisung im Interface oder Implementation Abschnitt nimmst, hängt auch vom Zusammenhang ab. Die aufzurufende Prozedur/Funktion muss allerdings im interface Abschnitt veröffentlicht worden sein. |
Re: procedure aus andere unit direkt öffnen
Hi Danke für die schnelle Antwort
Bei Uses im Implementation Abschnitt hab ich die verschieden Units untereinander schon alle drin. Was meinst du genau mit "im Interface Teil veröffentlicht"? |
Re: procedure aus andere unit direkt öffnen
Moin sAibo,
mit veröffentlichen meine ich folgendes:
Delphi-Quellcode:
Würde die Zeile im interface Abschnitt fehlen, könnte man die Funktion nicht aus einer anderen Unit heraus ansprechen, selbst wenn man sie mit in die unit mit in eine uses Anweisung einer anderen Unit einbaut.
unit unit1;
interface function MeineFunktion : integer; implementation function MeineFunktion : integer; begin //.... end; |
Re: procedure aus andere unit direkt öffnen
Ohje ich hoffe ich stell mich jetzt nich ganz dumm an :?
Eigentlich dachte ich zu wissen was du meinst. Nur bekomm ich dann immer eine Fehlermeldung
Delphi-Quellcode:
Fehlermeldung: Ungenügend Forward- oder ExternalDeklaration 'TFormConnect.connect' :(
unit UnitConnecting;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls; type TFormConnect = class(TForm) StatusBar1: TStatusBar; MemoConnect: TMemo; ButtonAbbrechen: TButton; ButtonOk: TButton; procedure ButtonAbbrechenClick(Sender: TObject); procedure connect; // <--- Hier die besagte Funktion private { Private-Deklarationen } public { Public-Deklarationen } end; var FormConnect: TFormConnect; implementation uses UnitMain, UnitSpielStarten; |
Re: procedure aus andere unit direkt öffnen
Moin sAibo,
was Du deklariert hast, ist eine Methode der Klasse TFormConnect, was mir im gezeigten Zusammenhang auch sinnvoll erscheint. Das ginge auch, nur müsstest Du sie dann im Implementation Abschnitt mit
Delphi-Quellcode:
deklarieren.
procedure TFormConnect.Connect;
begin //... end; [EDIT] Ich dachte ursprünglich an eine Deklaration ausserhalb einer Typdeklaration. Dann müsstest Du die Prozedur über den Objektnamen.Connect ansprechen, in Deinem Beispiel also
Delphi-Quellcode:
[/EDIT]
FormConnect.Connect
|
Re: procedure aus andere unit direkt öffnen
du musst die dann aber aus einer anderen unit mit Formconnect.connect ansprechen, soweit ich weiss....!!!!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:22 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