黄聪:Delphi Dbgrid滚轮问题解决

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls;

type

TDBGrid=class(DBGrids.TDBGrid)

public

function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean; override;

end;

TForm1 = class(TForm)

DataSource1: TDataSource;

DBGrid1: TDBGrid;

ADOTable1: TADOTable;

Edit1: TEdit;

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

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.