![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как заставить правил. работать скроллинг в DBGrid + ADOQuery. [D5, Win95/98, WinME, NT4, Win2k]
IlyaGer © (2003-02-28 10:47:00)Здравствуйте!
Использую в программе DBGrid связанный с ADOQuery.
При попытке скрола с помощью ролика мыши не происходит перехода к следующей записи в ADOQuery.
При этом, выделенной в DBGrid становиться следующая строка, и становиться несколько элементов (треугольников), показывающих выбранную строку.
Так же не возможно сделать скролл не данные которые не поместились на экран.
Проблема пермонентно появляется или пропадает в зависимость от драйверов и производителей мыши.
Заранее спасибо!
Илья.
sniknik (2003-02-28 12:10:00) [1]сори, недостающее звено :-))
TWMMouseWheel = packed record
Msg: Cardinal;
Keys: SmallInt;
WheelDelta: SmallInt;
case Integer of
0: (
XPos: Smallint;
YPos: Smallint);
1: (
Pos: TSmallPoint;
Result: Longint);
end;
sniknik (2003-02-28 12:08:00) [2]TMyDBGrid = class(TDBGrid)
procedure WMMouseWheel(var Message: TWMMouseWheel); message WM_MOUSEWHEEL;
......
procedure TMyDBGrid.WMMouseWheel(var Message: TWMMouseWheel);
begin
if DataSource.DataSet.Active then begin
if Message.WheelDelta > 10 then DataSource.DataSet.Prior;
if Message.WheelDelta < -10 then DataSource.DataSet.Next;
end;
end;