ich möchte gerne bei einem MouseWheel-Ereignis in einem Memo-Feld das Drehen des Maus-Rades in ein VK_UP bzw. VK_DOWN Ereignis umwandeln. Dazu habe ich geschrieben:
Code: Alles auswählen
procedure TMemoTestFrm.Memo1MouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
var
Msg : tagMSG;
i : integer;
begin
if WheelDelta > 0
then Msg.wParam := VK_UP
else Msg.wParam := VK_Down;
Msg.lParam:=0;
i := sendMessage(Application.handle, WM_KEYDOWN, Msg.wParam, Msg.lParam);
Handled := true;
end;
Aber leider zeigt sich das Programm völlig unbeeindruckt, d. h. es tut nichts, das Ergebnis von sendMessage (i) ist 0.
Was mache ich falsch? (da relativ neu in Lazarus sind selbst die blödesten Fehler bei mir denkbar)
Vielen Dank im Voraus für gute Tipps und alles Gute in diesen schweren Zeiten
Kornelius