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

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

Еще о 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;

...


Наверх

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