Procedure OnMouseWheel(Var Msg :TMsg;var Handled:Boolean);
begin
if Msg.message = WM_MouseWheel then
begin
if Msg.wParam > 0 then
begin
if DBGrid.Focused then
begin
SendMessage(DBGrid1.Handle,WM_KEYDOWN,VK_UP,0);
end;
end
else
begin
if DBGrid.Focused then
SendMessage(DBGrid1.Handle,WM_KEYDOWN,VK_DOWN,0);
end;
Handled:= True;
end;
end;
需要在Form创建的时候写入
Application.OnMessage:=OnMouseWheel; // 截获鼠标滚动事件