das OnChange gibts gewissermaßen schon. Und zwar wäre das "Listbox.Items.onChange".
Dieses ist jedoch schon zugewiesen damit die grafische Komponente die Änderungen mitbekommt.
Jedoch ist es auch ohne Probleme möglich das umzubiegen.
Delphi-Quellcode:
private
fOldLBChange: TNotifyEvent;
procedure FLBChangedProc(Sender: TObject);
[...]
fOldLBChange := Listbox1.Items.OnChange;
Listbox1.Items.OnChanged := FLBChangedProc;
[...]
procedure TYourClass.FLBChangedProc(Sender: TObject);
begin
fOldLBChanged(Sender);
//SaveToFile
end;