Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как можно осуществить перемещение по DBGrid с помощью колеса мыши [D5, Win95/98]


AlexeyBl ©   (2002-07-11 19:24:00) 

Как можно осуществить перемещение по DBGrid с помощью колеса мыши?


Eugene Lachinov   (2002-07-11 19:56:00) [1]

Только вот не знаю, возможно ли это в Delphi 5, код для Delphi 6


Eugene Lachinov   (2002-07-11 19:55:00) [2]

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, Grids, DBGrids, DBTables;

type
TForm1 = class(TForm)
Table1: TTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
procedure MyMouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

type
TDBGridWrapper = class(TDBGrid);

procedure TForm1.FormCreate(Sender: TObject);
begin
TDBGridWrapper(DBGrid1).OnMouseWheel := MyMouseWheel
end;

procedure TForm1.MyMouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
const
k = 1;
begin
DBGrid1.DataSource.DataSet.MoveBy((-WheelDelta div WHEEL_DELTA) * k);
Handled := True;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо