Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi "Klasse" mit "Property"s (https://www.delphipraxis.net/71398-klasse-mit-property-s.html)

qb-tim 14. Jun 2006 16:01


"Klasse" mit "Property"s
 
Aus dem Thema: "Hintergrund"-Prozedur...

:arrow:

markusj hat folgendes geschrieben:
Dann kontrolliere doch einfach den Zugriff auf deine Variablen ... dass schreit nach einer Klasse mit einer Property, die die Variable vertritt ... soll die Variable geändert werden, wird zuerst der neue Wert überprüft und dann abhängig davon gehandelt!


Appropos Klasse und Property...

Nehmen wir mal das Beispiel mit den sterbenden Figuren...

Gut wäre dann:

Delphi-Quellcode:
Figur[x].Gesundheit // Integer
Figur[x].Lebend // Boolean (False = Tod)

// usw.
Wie deklariere ich die? (Mein Problem liegt nicht nur darin, einen Array zu integrieren)

Khabarakh 14. Jun 2006 16:08

Re: "Klasse" mit "Property"s
 
Wäre es für den Einstieg in OOP nicht klüger, sich ein Tutorial zu dem Thema zu schnappen, anstatt sich Beispielcode geben zu lassen?
Meistgenannte Tutorialseite in der DP ist wohl www.dsdt.info.

mkinzler 14. Jun 2006 16:09

Re: "Klasse" mit "Property"s
 
Delphi-Quellcode:
TFigur = class
  private
    FGesundheit: Single;
  public
     procedure setGesundheit ( value: Single);
     function getLebend: Boolean;
  published
     property Gesundheit: single read FGesundheit write setGesundheit;
     Property Lebend: Boolean read getLebend;
end;

procedure TFigur.setGesundheit( Value: Single);
begin
    if Value >=0 and Value <=1 then FGesundheit := Value;
end;

function getLebend: Boolean;
begin
  if FGesundheit > 0 then result := True else Result := False;
end;
[Edit: Ich sehe gerade du hast für Gesundheit Integer gewählt; ist aber egal kannste ja anpassen, das Prinzip sollte nun klar sein oder Tut lsesn ;-)]

Luckie 14. Jun 2006 17:46

Re: "Klasse" mit "Property"s
 
Ein Klöassentutorial gibt es auch von mir: http://delphitutorials.michael-puff.de


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:52 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