Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#8

AW: [gelöst] Cursortasten von Buttons fernhalten

  Alt 20. Sep 2017, 10:44
Passen wir es nochmal an (dann können wir auf die implizit gemachte Annahme über den Wert von Handled verzichten):
Delphi-Quellcode:
procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey; var Handled: Boolean);
const
  STEP = 16;
var
  Button: TButton;
begin
  Handled := False;
  if (Screen.ActiveForm = self) and // Ist das gewünschte Fenster aktiv?
     (ActiveControl is TButton) then
    begin
      Button := TButton(ActiveControl);
      Handled := true;
      case Msg.CharCode of
         VK_LEFT : Button.Left := Button.Left - STEP;
         VK_UP : Button.Top := Button.Top - STEP;
         VK_RIGHT : Button.Left := Button.Left + STEP;
         VK_DOWN : Button.Top := Button.Top + STEP;
      else
         Handled := False;
      end;
    end;
end;
  Mit Zitat antworten Zitat