Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

AW: Mehrere Eigenschaften zusammenfassen - aber wie?

  Alt 25. Jan 2011, 17:47
Nein, nicht diese Felder einfach nach Public verschieben ... wenn man diese über Property freigibt, dann kann man später einfacher die Zugriffe bearbeiten.
Also wenn, dann siehe den Code von ele ... wenn du in den Settern/Gettern nichts besonderes machst, dann diese einfach weglassen und das Property direkt umleiten.

Man könnte aber auch einen Index nutzen:
Delphi-Quellcode:
TAdresse = Class
private
  function StringGetter(Index: Integer): String;
  procedure StringSetter(Index: Integer; Value: String);
  ...
public
  property Name: String index 0 read StringGetter write StringSetter;
  property Vorname: String index 1 read StringGetter write StringSetter;
  property Strasse: String index 2 read StringGetter write StringSetter;
  property Hausnummer: Integer index 3 read IntegerGetter write IntegerSetter;
end;
Jetzt kann man das entweder direkt behandeln oder z.B. auf entsprechende Arrays weiterleiten:
Delphi-Quellcode:
TAdresse = Class
private
  fStringValues: array[0..2] of String;
  fIntegerValues: array[0..0] of Integer;
  function StringGetter(Index: Integer): String;
  procedure StringSetter(Index: Integer; Value: String);
  function StringGetter(Index: Integer): String;
  procedure StringSetter(Index: Integer; Value: String);
public
  property Name: String index 0 read StringGetter write StringSetter;
  property Vorname: String index 1 read StringGetter write StringSetter;
  property Strasse: String index 2 read StringGetter write StringSetter;
  property Hausnummer: String index 0 read IntegerGetter write IntegerSetter;
end;
$2B or not $2B

Geändert von himitsu (25. Jan 2011 um 17:50 Uhr)
  Mit Zitat antworten Zitat