unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ADODB, Grids, DBGrids;
type TForm1 = class(TForm) DBGrid1: TDBGrid; ADOTable1: TADOTable; DataSource1: TDataSource; procedure FormCreate(Sender: TObject); private Procedure OnMouseWheel(Var Msg :TMsg;var Handled:Boolean); { Private declarations } public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm} //------------------------------------------------------------------------------ Procedure TForm1.OnMouseWheel(Var Msg :TMsg;var Handled:Boolean); begin if Msg.message = WM_MouseWheel then begin if Msg.wParam > 0 then begin if DBGrid1.Focused then SendMessage(DBGrid1.Handle,WM_VSCROLL,SB_PAGEUP,0); end else begin if DBGrid1.Focused then SendMessage(DBGrid1.Handle,WM_VSCROLL,SB_PAGEDOWN,0); end; Handled:= True; end; end;
procedure TForm1.FormCreate(Sender: TObject); begin Application.OnMessage:=OnMouseWheel; // 截获鼠标滚动事件 end; |