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

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

Ролик мышки на DBGrid [D7, WinXP]


Dima_DD ©   (2005-12-08 09:08:00) 

Здавствуйте, мастера ! Подскажите что сделать чтобы можно было просматривать записи в DBGrid c помощью ролика мыши ?
Он у меня перестает прокручивать тогда когда доходит до
последней записи из записей отображенных на экране, дальше приходится стрелкой вниз. Заранее спасибо.


msguns   (2005-12-08 09:36:00) [1]

procedure TfrmListFond.FormCreate(Sender: TObject);
begin
 TDrawGrid(grListFonds).OnMouseWheelDown := FormMouseWheelDown;
 TDrawGrid(grListFonds).OnMouseWheelUp := FormMouseWheelUp;
 TDrawGrid(grFondsNames).OnMouseWheelDown := FormMouseWheelDown;
 TDrawGrid(grFondsNames).OnMouseWheelUp := FormMouseWheelUp;
 TDrawGrid(grFondsParts).OnMouseWheelDown := FormMouseWheelDown;
 TDrawGrid(grFondsParts).OnMouseWheelUp := FormMouseWheelUp;
 ...
end;

procedure TfrmListFond.FormMouseWheelDown(Sender: TObject;
 Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
 if (Screen.ActiveControl.ClassType<>TDBGrid) then exit;
 with Screen.ActiveControl as TDBGrid do
   if Visible and (DataSource.DataSet<>nil) and (DataSource.DataSet.RecordCount>0) then
      DataSource.DataSet.Next;
end;

procedure TfrmListFond.FormMouseWheelUp(Sender: TObject;
 Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
 if (Screen.ActiveControl.ClassType<>TDBGrid) then exit;
 with Screen.ActiveControl as TDBGrid do
   if Visible and (DataSource.DataSet<>nil) and (DataSource.DataSet.RecordCount>0) then
      DataSource.DataSet.Prior;
end;


Leonid Troyanovsky   (2005-12-08 09:33:00) [2]


> Dima_DD   (08.12.05 09:08)  
> Здавствуйте, мастера ! Подскажите что сделать чтобы можно
> было просматривать записи в DBGrid c помощью ролика мыши



http://groups.google.com/group/borland.public.delphi.language.delphi.win32/msg/81be3f71fc6f2c24

--
Regards, LVT.


Dima_DD   (2005-12-08 09:29:00) [3]

2 Piero
У меня все равно не работает. Доходит курсор до последней записи на экране и тормозит.


Piero   (2005-12-08 09:20:00) [4]

procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState;
 WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
dbgrid1.ScrollBy(0,WheelDelta);
handled:=true;
end;


Наверх

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