Autor Beitrag
Chris Maslowski
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 109



BeitragVerfasst: Mi 23.02.05 19:37 
Hallo erst mal,

ich hab da mal so'ne Frage. Ich bin grad dabei mir ein mittelgroßes Programm zu schreiben. und wie's sich gehört sind da auch mehrere Formulare drinn. Doch leider weiß ich nihct wie ich variablen deklarieren kann die für alle Formulare gelten. Denn in jedem Teil des Spiels soll der Spiele immer die selben Erfahrungspunkte haben und so.

Moderiert von user profile iconTino: Topic aus Sonstiges verschoben am Do 24.02.2005 um 08:45
OneOfTen
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 23.02.05 19:46 
wie wärs, die variablen im public bereich zu deklarieren? Wenn alle in Form1 sind, kannst du auf die var mit Form1.variablenname zugreifen
der_zaehe
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 317

WinXP SP2
D6 Pers, D2005 Prof, VS2005
BeitragVerfasst: Mi 23.02.05 20:54 
zur erläuterung:
in deinem hauptform muss das so aussehen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
unit HauptForm;

...


type
  TForm1 = class(TForm)

...

  private
    { Private declarations }
  public
    { Private declarations }
    Variable : Datentyp;  // pack hier deine variable rein
  end;


und in den anderen forms dann z.B. so:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
unit NebenForm1;

interface

uses
  ...,HauptForm; //da halt der name der unit von deinem hautformular


du brauchst dann im nebenform nur noch nen objekt Form1 : TForm1.
(Wie schon gesagt wurde :wink: )

_________________
[inspirationslos]
Elite
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 23.02.05 20:58 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
unit NebenForm1;

implementation

uses
  ...,HauptForm; //da halt der name der unit von deinem hautformular

Machs lieber so, dann sparst du dir den nächsten Besuch hier.
delfiphan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2684
Erhaltene Danke: 32



BeitragVerfasst: Do 24.02.05 00:39 
Ich würde gleich eine separate Unit erstellen, wo alle "superglobalen" Variablen und Funktionen drin gespeichert sind.

ausblenden Delphi-Quelltext
1:
2:
3:
//in FormXX.pas:
implementation
 uses UGlobalVars;


Und UGlobalVars.pas:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
unit UGlobalVars;
interface
 Type
  GlobalType1 = record
  end;
 procedure GlobalProcedure1;
 Var
  Var1, Var2 : AnyType;
implementation
 procedure GlobalProcedure1;
 begin
 end;
end.


((Natürlich gäbe es auch noch die Möglichkeit mit der globalen Datenkapsel mit Singleton falls es denn objektorientiert sein muss :wink::wink:))
Chris Maslowski Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 109



BeitragVerfasst: Do 24.02.05 10:13 
Titel: variblen begrenzen
ich hätte da noch ne frage.
wie kann ich variabeln begrenzen? denn die varibeln sollen nur von eins bis hundert gehen. höher nicht
OneOfTen
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 24.02.05 10:21 
..neue Frage, neuer Thread..
du prüfst, ob die variable > 100 ist und setzt sie dann auf 100, eine Variable vom Typ Byte würde sich da lohnen