| Autor |
Nachricht |
Nersgatt
       
Beiträge: 929
Erhaltene Danke: 70
Delphi 2010 Enterprise
|
Verfasst: Mo 19.12.11 16:46
Ja, innerhalb der Form. Das würde ich aber nicht "global" nennen. Diese Vorgehensweise ist (je nach Einsatzzweck) durchaus legitim.
_________________ Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
|
| |
|
|
Werbung ausblenden? Dann registriere Dich kostenlos.
Weitere Gründe für eine Registrierung.
Werbung ausblenden? Dann registriere Dich kostenlos.
Weitere Gründe für eine Registrierung.
|
|
jaenicke
      
Beiträge: 15841
Erhaltene Danke: 741
XP, W7 x64 (Chrome, IE9, FF), Debian, (OSX 10.7)
RAD XE 2, Java (NB), C++, C# (VS 2010), JS/HTML, PHP, Lazarus
|
Verfasst: Mo 19.12.11 16:48
tetris84 hat folgendes geschrieben : | | Aber ist es dann nicht trotzdem noch Global in der Form aufrufbar? |
Ja, innerhalb des Formulars kann man das so sehen. Aber anders geht es nicht. Und Sachen für die aktuelle Klasse (sprich hier das Formular) im private-Abschnitt zu deklarieren ist normal.
Zudem sollten ggf. andere Teile ebenfalls in Klassen und Units gekapselt werden. Insofern ist es ja nicht wirklich global, sondern nur für diesen Teil der GUI global. Aus anderen Units kommst du ja z.B. nicht heran. 
|
| |
|
|
tetris84 
      
Beiträge: 31
|
Verfasst: Mo 19.12.11 17:05
Nachdem ich es mal in Private geschrieben hab kommt der Fehler "Undeklarierter Bezeichner" Was habe ich falsch gemacht?
|
| |
|
|
jaenicke
      
Beiträge: 15841
Erhaltene Danke: 741
XP, W7 x64 (Chrome, IE9, FF), Debian, (OSX 10.7)
RAD XE 2, Java (NB), C++, C# (VS 2010), JS/HTML, PHP, Lazarus
|
Verfasst: Mo 19.12.11 20:21
Dass deine Prozedur nicht zum Formular gehört vielleicht?
Sonst zeig mal den Quelltext dazu, raten ist nicht so gut...
|
| |
|
|
tetris84 
      
Beiträge: 31
|
Verfasst: Mo 19.12.11 21:13
Zuletzt bearbeitet von tetris84 am Mo 19.12.11 21:30, insgesamt 1-mal bearbeitet
|
| |
|
|
Yogu
       
Beiträge: 2544
Erhaltene Danke: 137
Windows 7 Home Premium
Visual C# 2010 Express
|
Verfasst: Mo 19.12.11 21:26
Die Variable heißt Verkauf, aber du versuchst, über Array darauf zuzugreifen. Das wird die Fehlermeldung auslösen.
Außerdem halte ich es für verwirrend, einen Typ namens TArray zu deklarieren, der 101 Records aufnehmen kann. Wenn du einen solchen Typ tatsächlich öfter brauchst, solltest du ihn entsprechend benennen. Ansonsten kannst du ihn auch direkt bei der Variablendeklaration angeben:
|
| |
|
|
tetris84 
      
Beiträge: 31
|
Verfasst: Mo 19.12.11 21:28
Ne das war jetzt nur son kleines Beispiel. Das ist so mein Quelltext in Kurzform.
Inklusive diesem Fehler. Der ist im echten Programm nicht. Hab die Variablen nämlich einfach nur in private kopiert.
|
| |
|
|
jaenicke
      
Beiträge: 15841
Erhaltene Danke: 741
XP, W7 x64 (Chrome, IE9, FF), Debian, (OSX 10.7)
RAD XE 2, Java (NB), C++, C# (VS 2010), JS/HTML, PHP, Lazarus
|
Verfasst: Mo 19.12.11 23:22
Da hatte ich ja Recht.
jaenicke hat folgendes geschrieben : | | Dass deine Prozedur nicht zum Formular gehört vielleicht? |
Mach daraus eine Methode des Formulars, dann klappt das auch.
Das ist ja genau der Sinn darin, die Variable als privates Feld zu deklarieren. Du kommst dann eben auch nur aus dem Formular und dessen Methoden heran.
|
| |
|
|