Thema: Delphi Pfeiltasten abfangen

Einzelnen Beitrag anzeigen

PeterKiers

Registriert seit: 15. Mär 2005
Ort: Wuppertal
42 Beiträge
 
#1

Pfeiltasten abfangen

  Alt 15. Apr 2006, 20:27
Hi Leute,

Ich suche nach einem Ereignis, dass ausgelöst wird, wenn der Nutzer auf eine der Richtungstasten drückt (links / rechts / oben / unten). Ich habe ein Komponente(TCustomControl) implementiert und würde gern noch ne Tastatursteuerung dazu entwerfen; dazu brauch ich aber so ein Ereignis. Und das Standart-OnKeyDown-Event wird bei mir nicht ausgelöst, wenn ich auf eine dieser Tasten drücke. Genauso wenig leider die Message WM_KEYDOWN.

Weiß jemand Rat?

Code:
(*--------------------------------------------------------*)
procedure TDSP3270.CursorLeft(speed: integer);
begin
     DispCell(FCsrCol,FCsrRow,true) ;
  FCsrCol := FCsrCol - speed ;
  if FCsrCol <= 0 then
    FCsrCol := FSCRCOLS ;
  DrawCursor(FCsrCol,FCsrRow) ;
end;
(*--------------------------------------------------------*)
procedure TDSP3270.CursorRight(speed: integer);
begin
    DispCell(FCsrCol,FCsrRow,true) ;
  FCsrCol := FCsrCol + speed ;
  if FCsrCol > FSCRCOLS then
    FCsrCol := 1 ;
  DrawCursor
(*--------------------------------------------------------*)
procedure TDSP3270.WMKeyDown(var Msg: TWMKeyDown);
 var
  First:boolean;

 function Shift:boolean;
  begin
   result:=GetKeyState(VK_SHIFT) < 0;
  end;
 function Ctrl:boolean;
  begin
   result:=GetKeyState(VK_CONTROL) < 0;
  end;
 begin
  case Msg.CharCode of
   vk_Left    : CursorLeft(601);
   vk_right  : CursorRight(600);
               und so weiter…
(*--------------------------------------------------------*)
Danke im Vorraus

Peter Kiers
  Mit Zitat antworten Zitat