Moin, moin
hatte mal ein Grid wo ich auf Funktionstasten reagieren mußte. Leider ist die Routine nicht
für den ganzen Tastatursatz durchentwickelt (zuwenig Zeit). Sie hängt sich in die MessageLoop
und Filtert die Erreignisse anhand der Kennzahl. Da wird überhaupt kein Fokus betrachtet.
Denke, dass es Dir helfen kann, auch wenn Du die Codierung der Pfeiltasten noch ermitteln mußt.
Delphi-Quellcode:
interface
procedure CatchFormMsg (var Msg : TMessage);
implemntation
procedure TStringGrid.CatchFormMsg(var Msg : TMessage);
var
MyKeyCode : Word;
MyShiftState : TShiftState;
const Tick : extended = 0.00;
const ms : extended = 100;
begin
if enabled then
if (Msg.Msg = 45102 ) then { KeyPressed }
begin
begin
ShortCutToKey( FKeyShortCut, MyKeyCode, MyShiftState);
// Wie reagiert man auf Shift / STRG / Alt ? //
// was mach tlparam - noch offen //
if (Msg.lParam > -1 ) then
if (Msg.wParam = MyKeyCode ) then
begin
if GetTickCount - Tick > ms then
begin
Click;
Msg.Msg := 0;
Msg.wParam := 0;
end;
Tick := GetTickCount;
end;
end;
end;
StoredWndProc(Msg);
end;
Grüße nach Vulkan // Martin