![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Координаты ячейки в DBGrid, над которой находится мышь [D6, Oracle]
Andrew_ © (2002-09-11 19:27:00)Господа! MouseCoord возвращает координаты видимойчасти DBGrid-а, т.е. если DBGrid проскроллирован вниз, то все строки, которые остались вверху не учитываются, а ячейки в первой видимой строке имеют координаты 1, а мне нужно знать их абсолютное значение, т.е. с начала ВСЕГО списка.
Использую DBGrid из библиотеки EhLib.
Спасибо
Andrew_ (2002-09-12 14:16:00) [1]Спасибо. Все получилось.
ЮЮ (2002-09-12 10:42:00) [2]>дело за малым, определить номер записи, над которой находится мышка
Опять пресловутый номер записи. У DBGrida ровно столько записей, сколько можно вывести на экран.
1) TCustomGrid.MouseCoord
Returns the row and column indexes of the cell that contains a point specified in screen coordinates.
2) Зная строку, делаем как в DBGrid.DrawCell:
OldActive := DataLink.ActiveRecord;
try
Datalink.ActiveRecord := ARow;
<в этом месте мы имеем доступ к той самой записи>
finally
Datalink.ActiveRecord := OldActive;
Andrew_ (2002-09-12 10:29:00) [3]Может быть и достаточно, дело за малым, определить номер записи, над которой находится мышка.
ЮЮ (2002-09-12 10:25:00) [4]А без RecNo подойдет? Может быть достаточно доступа ко всем полям той записи, которая в данный момент находится под мышью?
Andrew_ (2002-09-12 10:19:00) [5]Так что, никто не знает?
В конечном итоге мне необходимо определить номер записи (RecNo), над которой находится указатель мыши не выбирая эту ячейку.
ЮЮ (2002-09-12 03:27:00) [6]>видимой части DBGrid
В DBGride нет невидимой части. Его DataLink содержит ровно столько записей, сколько может быть отражено в Gride, т.о. DBGrid показывает все записиDataLink-а
BlackTiger (2002-09-11 21:30:00) [7]Не в тему: у тебя EhLib нормальный или eval? не дашь по-пользоваться :-). Мне их грид понравился очень (если не жалко скинь на ap@rd.lv).
По теме: сомневаюсь, что это получится без извратов, так как тебе нужно установить фокус на ячейку, над которой проходил мышь.
А вот дальше проще - узнай какая это колонка, какая запись по счету (из Table/Query) и перемнож их.
Val (2002-09-11 19:33:00) [8]можно узнать, какая этим преследуется цель?