Einzelnen Beitrag anzeigen

a.def
(Gast)

n/a Beiträge
 
#9

AW: Pfeiltasten benutzen zum Bewegen eines Shapes

  Alt 28. Dez 2016, 15:19
Nimm statt des Ereignisses FormKeyDown einfach FormShortCut (OnShortCut) des Formulars.

Die Tasten kannst du da so auswerten:

if Msg.CharCode = VK_LEFT then begin [DeinCode]; Handled:=true; end;
Durch das Handled:=true wird dann der Tastenanschlag nicht mehr an andere Komponenten weiter gegeben.

Oder so
Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
 if Key = vk_left then
  Shape1.Left := Shape1.Left - 2;
 if Key = vk_right then
  Shape1.Left := Shape1.Left + 2;
 if Key = vk_up then
  Shape1.Top := Shape1.Top - 2;
 if Key = vk_down then
  Shape1.Top := Shape1.Top + 2;

 Key := 0; // <==
end;
  Mit Zitat antworten Zitat