【Delphi7】讓 TDBGrid 可以使用滑鼠滾輪

先在 from 內放一個 DBGrid, 然後在 type 下將 TDBGrid 重新繼承 TCustomDBGrid, 並將原本為 protectedDoMouseWheel 放寬為 public, 如下----

type
    TDBGrid = class(TCustomDBGrid)
    public
        function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint): Boolean; override;
    end;



再在 implementation 寫上實際執行 DoMouseWheel 的函數, 如下 ----

implementation

...
...

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;
    Result := true;
end;


新版的 Delphi 就已經支援滑鼠滾輪了。