delphi中怎么在DBgrid中实现鼠标滚轮效果
1个回答
2017-05-10 · 知道合伙人软件行家
关注
展开全部
在新版本 delphi 中,DBGrid 组件自带有响应鼠标滚动事件:
如果当前 DBGrid 组件没有鼠标滚动消息事件,可以通过 Application 进行自定义消息实现,以下是示例代码:
procedure ApplicationEvents1Message(var Msg: tagMSG;var Handled: Boolean);
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;var Handled: Boolean);
begin
if (DBGrid2.Focused) And (Msg.message = WM_MOUSEWHEEL) then
begin
if Msg.wParam > 0 then
SendMessage(DBGrid2.Handle, WM_KEYDOWN, VK_UP, 0)
else
SendMessage(DBGrid2.Handle, WM_KEYDOWN, VK_DOWN, 0);
Handled := True;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMessage:=ApplicationEvents1Message; // 截获鼠标滚动事件
end;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询