AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

globale Variablen?

Ein Thema von olfrygt · begonnen am 26. Jan 2008 · letzter Beitrag vom 30. Jan 2008
Antwort Antwort
Seite 1 von 3  1 23      
olfrygt

Registriert seit: 13. Jan 2008
11 Beiträge
 
Turbo Delphi für Win32
 
#1

globale Variablen?

  Alt 26. Jan 2008, 14:01
Hallo,

Ich hab gerade angefangen an einem kleinen Rechenprogramm zu basteln.
Es werden nach und nach mehrere Daten vom Nutzer abgefragt. Auf mehreren Seiten.

Mein 1. Problem:

Ich bin nur in der Lage ein einziges Formular zu erstellen und es mit allen Komponenten, die ich irgendwann mal brauche vollzupacken und dann mit der Visible-Eigenschaft zu arbeiten. Das ist, um genau zu sein, abartig unübersichtlich.

Also dachte ich mir, dass ich mehrere Formulare erstelle. Da aber jedes Formular über seine eigene Unit verfügt muss ich die Variablen, die bei der Nutzerabfrage entstehen, für alle Units und somit Formulare verfügbar machen.

Also hab ich nach dem Begriff "globale Variablen" gesucht. Alles was ich gefunden habe, war immer wieder der Hinweis, man solle erst gar keine globalen Variablen verwenden. Warum das so ist, und wie man das Problem anders lösen könnte hab ich nicht verstanden. Zumal ich noch nicht einmal weiß, wie ich das mache, was ich eigentlich nicht machen soll (globale Variablen deklarieren). ^^

Muss ich jetzt die Variable unter dem Abschnitt "Public" deklarieren oder weiter unten, wo schon "Var" steht?
Und muss ich unter "Uses" dann noch den anderen Units sagen, aus welchen anderen Units sie überall globale Variablen beziehen sollen?

MfG
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: globale Variablen?

  Alt 26. Jan 2008, 14:39
Erstelle eine Variable unter "Public" (z.B. in Form1). In der anderen Form (z.B. Form2) kannst du dann mit

Form1.VariablenName := Wert; darauf zugreifen. Wenn du kompilieren willst, sollte eine Abfrage kommen, ob du die Form-Unit in die Uses-Liste übernehmen willst. Mit Ja bestätigen und neu starten. Fertig!

Patti
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
olfrygt

Registriert seit: 13. Jan 2008
11 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: globale Variablen?

  Alt 26. Jan 2008, 16:20
Dankeschön!

*ausprobier*
  Mit Zitat antworten Zitat
Viktorii

Registriert seit: 19. Jul 2007
358 Beiträge
 
#4

Re: globale Variablen?

  Alt 29. Jan 2008, 07:29
Zitat von patti:
Erstelle eine Variable unter "Public" (z.B. in Form1). In der anderen Form (z.B. Form2) kannst du dann mit

Form1.VariablenName := Wert; darauf zugreifen.
Patti
Ich dachte immer, dass genau das (nicht über Properties sondern direkt auf (public-) Varialben zugreifen) schlechter Programmierstil wäre. Oder habe ich da was falsch verstanden?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: globale Variablen?

  Alt 29. Jan 2008, 07:31
Zitat von Viktorii:
Ich dachte immer, dass genau das (nicht über Properties sondern direkt auf (public-) Varialben zugreifen) schlechter Programmierstil wäre. Oder habe ich da was falsch verstanden?
Du kannst natürlich auch eine Property mit einer Getter- und einer Settermethode schreiben.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Viktorii

Registriert seit: 19. Jul 2007
358 Beiträge
 
#6

Re: globale Variablen?

  Alt 29. Jan 2008, 07:57
Zitat von DeddyH:
Zitat von Viktorii:
Ich dachte immer, dass genau das (nicht über Properties sondern direkt auf (public-) Varialben zugreifen) schlechter Programmierstil wäre. Oder habe ich da was falsch verstanden?
Du kannst natürlich auch eine Property mit einer Getter- und einer Settermethode schreiben.
Ja genau, so dachte ich mir das... Ich dachte immer, wenn man das nicht so macht, also direkt setzt, wäre das pfui....
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: globale Variablen?

  Alt 29. Jan 2008, 08:07
Direkt pfui würde ich nicht unbedingt sagen, auf jeden Fall besser als globale Variablen
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Aurelius
Aurelius

Registriert seit: 29. Jan 2007
Ort: Erfurt
753 Beiträge
 
Delphi 7 Personal
 
#8

Re: globale Variablen?

  Alt 29. Jan 2008, 08:11
Was hat dass den eigentlich für Besondere Nachteile (public)? Habe noch nix gefunden was für mich persönlich dagegen sprechen sollte die zu nutzen...
Jonas
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: globale Variablen?

  Alt 29. Jan 2008, 08:20
Zitat von xX0815Xx:
Was hat dass den eigentlich für Besondere Nachteile (public)? Habe noch nix gefunden was für mich persönlich dagegen sprechen sollte die zu nutzen...
Nehmen wir als Beispiel das Gaspedal am Auto.

Direkt über Public-Member:
Du steckst während dem Fahren den Arm aus dem Fenster und betätigst die Steuerklappe am Vergaser/Einspritzer.
Klappe drücken -> schneller fahren, Klappe loslassen -> langsamer fahren.

Nun per Setter-Methode:
Du definierst ein Gaspedal, das man bequem aus dem Innenraum des Autos drücken kann.
Nun kannst Du auch noch einige Sachen überprüfen, bevor die Steuerklappe geöffnet wird.
z.B. ist ein Gang eingelegt?
drehen die Räder schon durch?
ist überhaupt der Motor eingeschaltet?
usw.
Erst wenn alle Überprüfungen erfolgreich gewesen sind, wird die Klappe geöffnet und das Auto fährt.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von Aurelius
Aurelius

Registriert seit: 29. Jan 2007
Ort: Erfurt
753 Beiträge
 
Delphi 7 Personal
 
#10

Re: globale Variablen?

  Alt 29. Jan 2008, 08:24
Ich könnte doch aber auch mit weiteren public-Variablen prüfen ob die anderen Bedingungen erfüllt sind und dann die Variable ändern, oder?
Jonas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:38 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