![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Еще о DBGrid [D6, IB6.x]
Teas © (2002-06-19 13:02:00)Мастера, помогите разобраться с скроллером мыши. Когда я прокручиваю записи в DBGrid скроллером, то прокрутка идет только в пределах экрана. И чтобы прокрутить всю таблицу приходиться прибегать к клавиатуре. Как решить?
Teas (2002-06-19 21:06:00) [1]Lusha, спасибо вам. Вы даете отличные примеры.
Lusha (2002-06-19 14:54:00) [2]Например так...
type
TMyDBGrid = class(TDBGrid);
TForm1 = class(TForm)
DBGrid1: TDBGrid;
...
procedure FormCreate(Sender: TObject);
...
private
procedure MouseWheelDown(Sender: TObject; Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
procedure MouseWheelUp(Sender: TObject; Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
...
end;
...
implementation
...
procedure TForm1.FormCreate(Sender: TObject);
begin
TMyDBGrid(DBGrid1).OnMouseWheelDown := MouseWheelDown;
TMyDBGrid(DBGrid1).OnMouseWheelUp := MouseWheelUp;
end;
...
procedure TForm1.MouseWheelDown(Sender: TObject; Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
TMyDBGrid(Sender).DataSource.DataSet.Next;
Handled := True;
end;
procedure TForm1.MouseWheelUp(Sender: TObject; Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
TMyDBGrid(Sender).DataSource.DataSet.Prior;
Handled := True;
end;
...