![]() |
Variable Unitübergreifend
Hallo, ich habe in meiner Unit2 eine variable namens "company". In Unit 3 möchte ich diese variable verwenden. Aber delphi beschwert sich mit undefinierter bezeichner. Wie kann ich aus der alten Unit die variable hohlen? Danke!
|
Re: Variable Unitübergreifend
Wo hast du sie denn in Unit2 deklariert? Und hast du Unit2 in den uses von Unit3 aufgenommen?
Btw. sind globale Variablen sehr gefährlcih und nicht OOP konform. Ich würde sie vermeiden wo es geht und stattdessen den Wertt als parameter einer Funktion weitergeben. |
Re: Variable Unitübergreifend
Und wie mache ich eine variable global?
|
Re: Variable Unitübergreifend
definier sie einfach über "implementation"
Delphi-Quellcode:
var
Form1: TForm1; deineVariable: DeinTyp; ... implementation |
Re: Variable Unitübergreifend
oder deklariere sie unter public
Delphi-Quellcode:
In Form3 dann:
public
a: integer;
Delphi-Quellcode:
uses Unit2;
... //Aufruf: Form2.a := 5; |
Re: Variable Unitübergreifend
Ich habe jetzt in Unit2:
Delphi-Quellcode:
und in Unit3:
procedure TForm2.Button1Click(Sender: TObject);
begin variable := String(Edit1.Text); end;
Delphi-Quellcode:
Aber in Unit3 schreibt er einfach in die Form3 'Musikspiel ' und nichts weiter. Es wird also nicht übernommen! Woran kann das liegen?
procedure TForm3.FormCreate(Sender: TObject);
begin form3.Caption := 'Musikspiel ' + String(Form2.company); end; |
Re: Variable Unitübergreifend
Zitat:
Man liest sich, Stanlay :hi: |
Re: Variable Unitübergreifend
Das war nur als beispiel!
|
Re: Variable Unitübergreifend
So, hier ist das ganze Problem:
![]() ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:28 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