Einzelnen Beitrag anzeigen

Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
7.967 Beiträge
 
Delphi 10.4 Sydney
 
#11

AW: Ansteuerung von einem statt zwei Editfelder

  Alt 15. Aug 2019, 10:54
Man setzt beim Ändern des jeweiligen Edit eine globale Variable, welche anzeigt welches Edit als letztes bearbeitet wurde (im OnChange) und somit die Steuerung übernimmt. Ist zwar keine schöne Methode aber würde funktionieren.

Delphi-Quellcode:
var
  sLastEdit : string;

procedure EditChange(Sender: TObject);
begin
  sLastEdit := TEdit(Sender).Name;
end;

procedure TTools.KopierenClick(Sender: TObject);
begin
  if sLastEdit = 'Edit1then
  begin
  
  end else if sLastEdit = 'Edit2then
  begin
  
  end;
end;
Das ist nicht schön, nein, aber so wäre es doch in Ordnung:
Delphi-Quellcode:
TTools = class(TForm)
  ...
  private
    FLastEdit: TEdit;
  end;

procedure TTools.EditChange(Sender: TObject);
begin
  FLastEdit := Sender as TEdit;
end;

procedure TTools.KopierenClick(Sender: TObject);
begin
  if Assigned(FLastEdit) then
    FLastEdit.text := FLastEdit.text + '1';
end;
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat