Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Variablen für gesamtes Projekt
Daniel_100 - Sa 24.04.04 23:43
Titel: Variablen für gesamtes Projekt
Hallo!
Kann man Variablen, die für das gesamte Projekt gelten, erstellen, so dass man in jeder Form dieselbe Variable nutzen kann?
Danke
Daniel
Moderiert von
tommie-lie: Topic verschoben
Raphael O. - Sa 24.04.04 23:45
diese Frage kam schon mehrmals in den letzten Tagen :roll:
du musst die entsprechende Variable im PublicTeil deiner Form deklarieren und kannst dann von den anderen Units aus darauf über Form1.variablenname zugreifen...
(Form1 durch Formnamen ersetzen)
tommie-lie - So 25.04.04 15:21
Alternativ geht's auch mit einer globalen Variable, die sind eigentlich dafür gemacht worden. Als Feld einer Form würde ich es nur machen,w enn es wirklcih direkt mit der Form zusammenhängt.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| unit Unit1;
interface
uses
type var <span style="color: red">meine_globale_variable: TMeinTyp;</span>
implementation
{$R *.dfm}
end. |
Und in jeder Unit, in der du "meine_globale_variable" benutzen willst, musst du oben unter "uses" die entsprechende Unit einfügen, in diesem Fall ist es "Unit1".
MSCH - So 25.04.04 16:20
isch aber nicht schööön.
Die klassische OOP würde empfehlen, dass alle zu nutzenden Variablen gekapselt sein müssen.
Also, wenn dein Projekt zum Beispiel aus 3 Forms besteht:
1. Schritt
Ableitung einer neuen Klasse von TForm
2. Schritt
Ergänzung dieser Ableitung um die gewünschten Inhalte (z.b. Variablen)
Ergänzung um Sicherung und Herstellung der Variablen (z.b. in eine INI Datei/Registry schreiben)
3. und folgender Schritt
alle "richtigen" Forms werden aus dieser Klasse abgeleitet.
grez
msch
tommie-lie - So 25.04.04 22:03
| MSCH hat folgendes geschrieben: |
isch aber nicht schööön.
Die klassische OOP würde empfehlen, dass alle zu nutzenden Variablen gekapselt sein müssen. |
Das versuchte ich mit dem Satz
| tommie-lie hat folgendes geschrieben: |
| Als Feld einer Form würde ich es nur machen,w enn es wirklcih direkt mit der Form zusammenhängt. |
genauer zu erläutern.
Denn es spricht genau gegen den Gedanken der OOP, einfach sämtliche Variablen in Klassen zu verfrachten, die man gerade so findet. Wenn, dann müsste man es in TApplication machen, aber nicht in TForm! Oder man müsste eine neue Klasse erzeugen, die sämtliche Variablen enthält, die global im Projekt verwendet werden, sozusagen ein Container, in den auch Form1 und sämtliche anderen Objektinstanzen rein müssten, denn Forumlare werden auch als globale Variablen deklariert.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!