Halte ich für etwas unglücklich. Ich würde Daten und Darstellung trennen:
Delphi-Quellcode:
type
TForm4 = class(TForm)
lbl1: TLabel;
btn1: TButton;
procedure FormCreate(Sender: TObject);
procedure btn1Click(Sender: TObject);
private
{ Private-Deklarationen }
MyCounter: Integer;
procedure MyLableUpdate(TargetLabel: TLabel);
public
{ Public-Deklarationen }
end;
var
Form4: TForm4;
implementation
{$R *.dfm}
procedure TForm4.btn1Click(Sender: TObject);
begin
Inc(MyCounter);
MyLableUpdate(lbl1);
end;
procedure TForm4.FormCreate(Sender: TObject);
begin
MyCounter := 0;
MyLableUpdate(lbl1);
end;
procedure TForm4.myLableUpdate(TargetLabel: TLabel);
begin
lbl1.Caption := IntToStr(MyCounter);
end;
Jetzt kann man beliebig viele und unterschiedliche Komponente für die Darstellung nehmen. man muss nur eine entsprechende Prozedur schreiben. Und wenn man will, könnte man auch alles in einer Prozedur abhandeln. Allerdings könnte es dann wieder etwas unübersichtlich werden.
Delphi-Quellcode:
procedure TForm4.UpdateComponent(Target: TComponent);
begin
if Target is TLabel then
TLabel(Target).Caption := IntToStr(MyCounter);
if Target is TEdit then
TEdit(edt1).Text := IntToStr(MyCounter);
end;