Moin Everun,
erst einmal herzlich willkommen hier in der Delphi-PRAXiS.
Da sehe ich zwei Möglichkeiten:
Du machst einen Typecast:
Delphi-Quellcode:
(last_change as TEdit).OnChange(Sender);
// oder
(last_change as TEdit).OnChange(nil);
oder aber, Du nimmst als Typ nicht TObject, sondern gleich TEdit.
Ausserdem sollte die Variable auf nil initialisiert werden.
Dann kannst Du vor deren Verwendung in der Button-Click-Routine prüfen, ob denn überhaupt schon ein TEdit zugewiesen wurde.
Ansonsten fängst Du Dir beim Anklicken des Buttons eine
AV ein.
Zudem könntest Du die Variable gleich als Feld im Formular unterbringen.
Delphi-Quellcode:
TForm1 = class(TForm)
//...
private
FLastChange : TEdit;
end;
und dann im OnCreate des Formulares initialisieren.