00 Stimmen

Delphi: Alles markieren mit STRG+A in Memo

Frage von Chematik | 05.12.2011 um 17:00

Ich habe ein TMemo auf einer Form. Wenn ich die Tastenkombination STRG und A in dem Memo drücke, erwarte ich, dass alles in dem Memo markiert wird. Es passiert aber nichts.

Wie kann das sein?! Müsste Windows nicht dafür sorgen, dass STRG-A funktioniert?! Und wie kann ich es erreichen, dass es geht?

AntwortenPositivNegativDatumStimmen
2Beste Antwort2 Stimmen

Dieses Verhalten zeigt ein Memo-Feld erst, wenn du in das OnKeyDown Event des Memos folgenden Code hinzufügst:

procedure TForm1.Memo1KeyDown(Sender: TObject; 
var Key: Word; Shift: TShiftState);
begin           
  if ((ssCtrl in Shift) and (Key = 65)) then 
    TMemo(Sender).SelectAll;  //alles markieren
end;

Damit wird bei jedem Tastendruck geschaut, ob die STRG-Taste und gleichzeitig das A gedrückt ist. Die 65 ist der Code von A, den du auch mit ord(A) abfragen kannst. 
07.12.2011 um 19:16

AntwortenPositiv Negativ
00 Stimmen

Und hier noch ein kleiner anderer Code, der das selbe macht.

procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
  if Key = ^A then begin
    (Sender as TMemo).SelectAll;
    Key := #0;
  end;
end;

Aus der englischen Askingbox.
10.03.2019 um 17:41

AntwortenPositiv Negativ
Antworten

Ähnliche Themen

Delphi: Systemweiter HotKey

Tutorial | 3 Kommentare

Wichtiger Hinweis

Bitte beachten Sie: 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.