Einzelnen Beitrag anzeigen

taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#20

Re: mit 1. Form auf 2. Form zugreifen

  Alt 19. Dez 2008, 12:30
Vielleicht noch mal etwas weiter erklärt. Mein Beispiel ist eigentlich noch nicht sehr sinnvoll. Gleiches wäre erreicht, wenn du die Variable einfach nur als public deklarierst:
Delphi-Quellcode:
private
  public
    Irgendwas : Integer;
end;

implementation

//..

Irgendwas:=99;

//..
So richtig sinnvoll sind Properties m.E. erst, wenn der Zugriff über Getter/Setter-Methoden erfolgt. Beispiel:

Delphi-Quellcode:
  private
  FIrgendwas : Integer;
  procedure SetIrgendwas(NeuerWert:Integer)
  function GetIrgendwas:Integer;
public
  property Irgendwas : Integer read GetIrgendwas write SetIrgendwas;
end;

implementation

//..

procedure T~~.SetIrgendwas(NeuerWert:Integer);
begin
  if NeuerWert>0 then FIrgendwas:=NeuerWert;
  ShowMessage('FIrgendwas wurde verändert')
end;

function T~~.GetIrgendwas:Integer;
begin
  Result:=FIrgendwas;
  ShowMessage('FIrgendwas wurde gelesen')
end;

//..
Damit erhälts du interessante Möglichkeiten; du kannst z.B. den neuen Wert prüfen und eine Änderung nur unter bestimmten Bedingungen zulassen. Ausserdem sind lesende und schreibende Zugriffe auf die interne Variable jetzt quasi zu einem Event geworden auf das du unit-intern reagieren kannst (das ShowMessage() ist hier nur ein Platzhalter). Denkbar ist z.B., daß nach einer Änderung des Wertes von aussen, die Unit eine Anzeige aktualisiert - das wär ohne den Setter schon schwieriger zu realisieren.
Ralph
  Mit Zitat antworten Zitat