Oder man merkt sich einfach, welches Edit zuletzt den Fokus hatte.
Delphi-Quellcode:
type
TDeinForm = class(TForm)
private
FLastFocusedEdit: TCustomEdit;
procedure RememberLastFocusedEdit(Sender: TObject);
...
end;
...
(* Diese Methode beiden Edits zum OnEnter-Ereignis zuweisen *)
procedure TDeinForm.RememberLastFocusedEdit(Sender: TObject);
begin
if Sender is TCustomEdit then
FLastFocusedEdit := TCustomEdit(Sender);
end;
Im OnCreate des Forms kann man FLastFocusedEdit mit einem der beiden Edits vorbelegen, die Buttons greifen dann auf das private Feld zu:
Delphi-Quellcode:
procedure TDeinForm.btn7Click(Sender: TObject);
begin
FLastFocusedEdit.Text := FLastFocusedEdit.Text + '7';
end;
@baumina: ActiveControl dürfte mit ziemlicher Sicherheit der auslösende Button sein, zumindest wenn es sich um einen Standard-Button (TWinControl) handelt.