Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#16

Re: will randomzahlen aufaddieren

  Alt 22. Jan 2004, 00:41
Jetzt verstehe ich dein Problem

Nun deine Methode TForm1.Button1Click(Sender: TObject); ist ja Bestandteil eines Objectes -> TForm. Das was du anscheinend noch nicht weist ist das auch ein Object eigene Variablen deklarieren kann.
Statt also Summe, eg. Zahl, als Lokale Variable in der Methode .Button1Click() zu deklarieren, wird diese Variable als Feld des Objectes definiert. Das sieht dann so aus:

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Button1: TButton;
    Edit2: TEdit;
   ...
    procedure Button1Click(Sender: TObject);
   ...
  private
    FSumme: Integer;
  protected
  public
  published
  end;

procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
begin
  I := Random(5) +1;
  if I = 1 then FSumme := 0
    else Inc(FSumme, I);

  Edit2.Text := IntToStr(FSumme);
end;
Wie du siehst wurde FSumme als neues privates Feld der Klasse TForm1 definiert. Jedes Object vom Typ TForm1 enthält nun eine eigene Variable mit dem Namen FSumme. Diese existiert exakt so lange wie auch das Object existert. Alle Felder von solchen Objecten werden per default mit 0, nil, '' usw. initialisiert.
Innerhalb jeder Methode zur Klasse TForm1 kann man direkt auf diese Object-Felder zugreifen.

Gruß Hagen
  Mit Zitat antworten Zitat