DBGrid支持鼠标滚轮滚动的解决办法
来源:互联网 发布:淘宝静物拍摄价格 编辑:程序博客网 时间:2024/05/28 23:11
方法一:
在窗体添加一个TApplicationEvents组件(在Additional中),然后在它的OnMessage事件中添加如下代码:
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);begin // 当在 DBGrid1 上发生鼠标滚轮事件时 if (DBGrid1.Focused) And (Msg.message = WM_MOUSEWHEEL) then begin if Msg.wParam > 0 then // 滚轮上滚 SendMessage(DBGrid1.Handle, WM_KEYDOWN, VK_UP, 0) // 向DBGrid1发送 VK_UP按键消息 else // 下滚 SendMessage(DBGrid1.Handle, WM_KEYDOWN, VK_DOWN, 0); Handled := True; // 消息已经处理完毕 end;end;
DBGrid1表示需要响应滚轮事件的DBGrid名,这样就能顺利解决滚轮支持的问题。
方法二:
首先在窗体定义前面新写一个类,继承于DBGrids.TDBGrid,添加一个DoMouseWheel的函数,如下:
type TDBGrid=class(DBGrids.TDBGrid) public function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean; override; end; TFormMain = class(TForm) //....省略 end;var FormMain: TFormMain;implementation{$R *.dfm} //....其他省略{ TDBGrid }function TDBGrid.DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean;begin if WheelDelta < 0 then DataSource.DataSet.Next; if wheelDelta > 0 then DataSource.DataSet.Prior;end;end.
0 0
- DBGrid支持鼠标滚轮滚动的解决办法
- DBGrid支持鼠标滚轮滚动的解决办法
- 如何让DbGrid支持鼠标滚轮滚动
- dbgrid支持鼠标滚轮
- DBGrid加鼠标滚轮滚动
- 让DBGRID支持鼠标滚轮
- [愿创]让DBGrid支持鼠标滚轮浏览数据,及去除垂直滚动条!
- delphi中dbgrid中数据随鼠标滚轮滚动
- Delphi中的DBGrid如何实现使用鼠标滚轮上下滚动
- 使DataGrid支持鼠标滚轮滚动记录
- DataGrid支持鼠标滚轮滚动记录
- C++Builder DBGrid鼠标滚轮
- CrystalReportViewer的鼠标滚轮支持
- 解决DBGrid中关于鼠标滚轮的一种方法。
- 彻底解决Delphi的DBGrid控件鼠标滚轮问题
- dbgrid鼠标滚动事件
- 让Delphi的DBGrid支持鼠标轮
- 怎样使DataGrid支持鼠标滚轮滚动记录
- HDU 1372 Knight Moves【BFS】
- 安装R语言在Linux环境
- Shadow of the Eternals' crowdfunding Buy ESO Gold
- cocos2dx 3.2 学习篇之五(简单理解内存管理)
- 编写最简单的Content Provider
- DBGrid支持鼠标滚轮滚动的解决办法
- SAS ERROR: More positional parameters found than defined.
- 退出多个Activity
- Fact dimension and degenerate dimension
- SD荆州市附件中代付款将自动控制顾客
- 最详细eclipse汉化插件安装教程
- 驴子圈资讯:同程发力无线业务布局休闲旅游O2O
- Socket 阻塞与非阻塞模式
- Java中常用html解析器