![]() |
Procedure in allen Unit's verwenden
Hey,
Ich möchte eine Procedure in allen Unit's verwenden. Aber das will einfach nicht klappen!.... Hier mein Code:
Delphi-Quellcode:
In Unit2 hab ich "form1.Ausrichten;" stehen, aber die Procedure Ausrichten wird nicht erkannt :(
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; private { Private declarations } public { Public declarations } end; procedure Ausrichten; forward; var Form1: TForm1; implementation uses Unit2; {$R *.dfm} procedure Ausrichten; begin Form2.Left:=form1.Left+form1.width+5; form2.Top:=form1.Top+5; end; Was is da falsch? MfG Big_Boss |
Re: Procedure in allen Unit's verwenden
Versuch 'mal
Delphi-Quellcode:
aber erstmal herzlich willkommen in der Dp :dp:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,unit2; Gruß Wolfgang |
Re: Procedure in allen Unit's verwenden
Hm nee das klappt so auch nicht kommt immer noch die Fehlermeldung:
Zitat:
|
Re: Procedure in allen Unit's verwenden
Pack die Prozedur in eine extra Unit und binde diese über all ein, wo sie gebraucht wird.
|
Re: Procedure in allen Unit's verwenden
bei dem hier gezeigten Code hast du Unit 2 in Unit eins eingebunden,
aber um von Unit1 auf etwas in Unit1 zugreifen zu können, müßtest du die Unit1 in der Unit2 ( Uses Unit1; einbinden. Aber es wäre natürlich besser, wenn du diese Prozedur in eine andere Unit verlegst, Unit eins, welche bei dir wohl eine/die Hauptunit sein wird, eignet sich nicht sonderlich gut für sowas. |
Re: Procedure in allen Unit's verwenden
Hallo,
die Deklaration der Procedure Ausrichten steht falsch. schieb sie mal dahin:
Delphi-Quellcode:
unabhängig davon:
private
{ Private declarations } public { Public declarations } procedure Ausrichten; end; - stimme ich meinem Vorredner zu - oder da, in diesem Falle, die Procedure die eigene Form betrifft, die Prozedur in Form2 zu deklarieren und einzubinden. :hi: edit: hab die Units verdreht beim Lesen...also Quellcode ignorieren bitte. Ich hol dann mal Kaffee, vieleicht hilfts. :oops: |
Re: Procedure in allen Unit's verwenden
In Unit2 wollte ich sie nicht reinmachen, falls ich sie später noch wo anders brauche....
Das mit der extra Unit werd ich machen, aber dann bleibt immer noch das Problem dass ich die nicht in die anderen reinbekomme... Zitat:
|
Re: Procedure in allen Unit's verwenden
Zitat:
|
Re: Procedure in allen Unit's verwenden
Delphi-Quellcode:
In der Unit1 und Unit2 dann die Unit3 einbinden.
unit Unit3;
interface uses Forms; procedure ausrichten(f1,f2: TForm); implementation procedure ausrichten(f1,f2:TForm); begin f2.Left:=f1.Left+f1.width+5; f2.Top:=f1.Top+5; end; Benutzen kannst Du die Routine dann so:
Delphi-Quellcode:
Grüße
ausrichten(Form1,Form2);
Klaus |
Re: Procedure in allen Unit's verwenden
Okay vielen Dank! So funktionierts.
Aber warum kann ich nicht direkt auf Objekte zugreifen in der procedure?? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:25 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 by Thomas Breitkreuz