Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Globale Variablen zweier Formulare (https://www.delphipraxis.net/173874-globale-variablen-zweier-formulare.html)

Jerubicarmus 21. Mär 2013 15:28

Globale Variablen zweier Formulare
 
Hi Leute, ich will ein Textadventure machen. Dafür hab ich TRadiogroup mit 3 Antwortmöglichkeiten verwendet. Wenn man die erste Antwort wählt soll I=1 sein, für die zweite I=2 usw. Da ich mehrere Formulare hab und sowas wie ne Auswertung der Antworten auf einem anderen Formular machen will, will ich I als Globale Variable der gesamten Form oder der gesamten Units machen. Reicht das wenn man I einfach als globale Variable in den gesamten Units deklariert oder muss ich da was andres beachten? Wenn das nicht geht, wie kann ich dann die Variable auf eine andere Unit übertragen?

DAnke im Voraus

DeddyH 21. Mär 2013 15:47

AW: Globale Variablen zweier Formulare
 
Wozu braucht man denn bei einem Textadventure mehrere Formulare (Aboutbox oder so mal ausgenommen)?

Der schöne Günther 21. Mär 2013 15:49

AW: Globale Variablen zweier Formulare
 
Ich verstehe nicht ganz - Das hatten wir doch schonmal?

Kernpunkt ist und bleibt: Warum mehrere Formulare? Für den absoluten Hardcore-Effekt reichte doch für die Darstellung an sich strenggenommen schon ein einziges Textfeld? (Weiße Schrift auf schwarzem Hintergrund natürlich8-))

Jerubicarmus 21. Mär 2013 16:02

AW: Globale Variablen zweier Formulare
 
Ich will einfach ne globale Variable, die auf alle Units zutrifft. Geht sowas? Textadventure oder nicht is hier ja nicht der Knackpunkt^^. Es geht mir einfach nur um die Variable die von mehreren Units aufgegriffen werden kann.

Sir Rufo 21. Mär 2013 16:06

AW: Globale Variablen zweier Formulare
 
Zitat:

Zitat von Jerubicarmus (Beitrag 1208273)
Ich will einfach ne globale Variable, die auf alle Units zutrifft. Geht sowas? Textadventure oder nicht is hier ja nicht der Knackpunkt^^. Es geht mir einfach nur um die Variable die von mehreren Units aufgegriffen werden kann.

Also ein Singleton ;)

Mach dir eine separate Unit, hau die Variable dort in den Interface Teil und binde diese Unit überall ein.

Jerubicarmus 21. Mär 2013 16:17

AW: Globale Variablen zweier Formulare
 
Also soll ich oben bei Interface Var i:integer z.B. reinschreiben? Wie kann ich die Units einbinden?

Sir Rufo 21. Mär 2013 16:24

AW: Globale Variablen zweier Formulare
 
Zitat:

Zitat von Jerubicarmus (Beitrag 1208276)
Also soll ich oben bei Interface Var i:integer z.B. reinschreiben? Wie kann ich die Units einbinden?

Ähmmm, da steht doch was von
Delphi-Quellcode:
uses
und da werden units eingetragen?

Perlsau 21. Mär 2013 21:13

AW: Globale Variablen zweier Formulare
 
Zitat:

Zitat von Jerubicarmus (Beitrag 1208266)
Reicht das wenn man I einfach als globale Variable in den gesamten Units deklariert oder muss ich da was andres beachten? Wenn das nicht geht, wie kann ich dann die Variable auf eine andere Unit übertragen?

Dann mach dir doch einfach eine Unit GlobaleVariablen, deklariere dort unter Interface MeineGlobaleVariable und binde die Unit in alle deine Forms in der USES-Klauses unter Implementation ein. Von deinen Forms wird die dann z.B. so angesprochen:
Delphi-Quellcode:
GlobaleVariable.MeineGlobaleVariable := 125;
@SirRufo: Sorry, sehe eben, daß du genau das bereits vorgeschlagen hast. Sorry, hätte wohl erst den Thread zu Ende lesen sollen ...

Viktorii 22. Mär 2013 12:18

AW: Globale Variablen zweier Formulare
 
Sollte man globale Variablen nicht besser mal ganz vermeiden?


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:37 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz