Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.546 Beiträge
 
Delphi 11 Alexandria
 
#17

AW: Key (z.B 'A' ) per Button an ein Editfeld senden

  Alt 21. Jan 2015, 14:32
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.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat