-1 1 Stimme

Delphi/Lazarus: Enter-Taste in Edit-Feld

Frage von Gast | Letztes Update am 17.01.2018 | Erstellt am 13.03.2015

Ich möchte gerne eine bestimmte Aktion automatisch ausführen, wenn in einem bestimmten TEdit-Feld die Enter- beziehungsweise Return-Taste gedrückt wurde.

Also zum Beispiel der automatische Start einer Suche nach Eingabe eines Suchbegriffes oder das Springen in das nächste Eingabefeld oder das automatische Drücken eines Buttons neben dem Feld.

Wie kann ich das realisieren?

AntwortenPositivNegativDatumStimmen

Delphianer

Profil anzeigen | Nachricht
Avatar
3Beste Antwort
7 Stimmen

Du kannst einfach im OnKeyPress des Edit-Feldes auf die Enter-Taste reagieren. Enter hat den Key-Code #13, die Abfrage könnte also zum Beispiel so aussehen:

procedure TForm1.Edit1KeyPress(Sender: TObject; 
  var Key: Char);
begin
  if Key = #13 then begin
    Button1.Click; // oder etwas anderes
    Key := #0;
  end;
end; 

Hier rufen wir einfach die Prozedur Button1Click auf, so dass der darin enthaltene Code beim Drücken der Enter-Taste ausgeführt wird, natürlich kannst du auch jeden anderen Code an dieser Stelle aufrufen oder eintragen.

Wichtig ist es anschließend den Key auf #0 zu setzen. So verhinderest du, dass noch eine weitere Verarbeitung im Edit stattfindet.
16.03.2015 um 17:37 Uhr

AntwortenPositiv Negativ

Delphianer

Profil anzeigen | Nachricht
Avatar
04 Stimmen

Wenn bei Drücken der Enter-Taste ein Button geklickt werden soll, kannst du auch die Eigenschaft "Default" des Buttons auf "true" setzen. Damit wird automatisch der Button geklickt, wenn Enter gedrückt wird.

Dasselbe gilt es auch für die ESC-Taste, in diesem Fall muss die Eigenschaft "Cancel" auf "true" gesetzt werden.
18.03.2015 um 21:54 Uhr

AntwortenPositiv Negativ
00 Stimmen

Besser bei kleineren Programmen!

Die obere Antwort ist für längere Programme besser geeignet.
25.01.2018 um 08:45 Uhr

Positiv Negativ
Antworten

Ähnliche Themen

Wichtiger Hinweis

Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.