|
 |
资料搜索 |
|
|
|
|
|
|
|
 |
相关文章 |
|
|
|
|
|
|
|
|
|
|
| 如何在DBGRID或者STRINGGRID中实现用滚轮进行翻页的功能 |
| [ 来源:CSDN | 作者:未知 | 时间:2006-4-10 14:22:59 | 浏览:人次 ] | |
|
你先在窗体上放一个TApplicationEvents控件(Delphi自带的),找到WmMouseWheelMessage事件。 下面是我实现的(这个用的是键盘的上下按键消息,你也可以改成滚动条消息)。 procedure TMainForm.WmMouseWheelMessage(var Msg: tagMSG; var Handled: Boolean); begin if (DBGrid.Focused) And (Msg.message = WM_MOUSEWHEEL) then begin if Msg.wParam > 0 then SendMessage(DBGrid.Handle, WM_KEYDOWN, VK_UP, 0) else SendMessage(DBGrid.Handle, WM_KEYDOWN, VK_DOWN, 0); Handled := True; end; end; ------------------------------------------------------------------------- 问题解决,特别感谢barely(一哥) DBGRID这么写,先加一个TApplicationEvents, procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); begin if (DBGrid1.Focused) And (Msg.message = WM_MOUSEWHEEL) then begin if Msg.wParam > 0 then SendMessage(DBGrid1.Handle, WM_KEYDOWN, VK_UP, 0) else SendMessage(DBGrid1.Handle, WM_KEYDOWN, VK_DOWN, 0); Handled := True; end; end; stringgrid这么写 procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); begin if (stringGrid1.Focused) And (Msg.message = WM_MOUSEWHEEL) then begin if Msg.wParam > 0 then SendMessage(stringGrid1.Handle, WM_KEYDOWN, VK_UP, 0) else SendMessage(stringGrid1.Handle, WM_KEYDOWN, VK_DOWN, 0); Handled := True; end; end;
|
|
|
|
|
|
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
|
|
|
|
|
栏目编辑: 设计风 |
责任编辑: keke |
|
|
原始作者: 未知 |
录入时间: 2006-4-10 14:22:59 |
|
|
信息来源: CSDN |
投稿信箱: Edu#chinaz.com |
|
|
|
| |
|