Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.10.03;
Скачать: [xml.tar.bz2];

Вниз

Координаты ячейки в DBGrid, над которой находится мышь   Найти похожие ветки 

 
Andrew_   (2002-09-11 19:27) [0]

Господа! MouseCoord возвращает координаты видимой части DBGrid-а, т.е. если DBGrid проскроллирован вниз, то все строки, которые остались вверху не учитываются, а ячейки в первой видимой строке имеют координаты 1, а мне нужно знать их абсолютное значение, т.е. с начала ВСЕГО списка.
Использую DBGrid из библиотеки EhLib.
Спасибо


 
Val   (2002-09-11 19:33) [1]

можно узнать, какая этим преследуется цель?


 
BlackTiger   (2002-09-11 21:30) [2]

Не в тему: у тебя EhLib нормальный или eval? не дашь по-пользоваться :-). Мне их грид понравился очень (если не жалко скинь на ap@rd.lv).

По теме: сомневаюсь, что это получится без извратов, так как тебе нужно установить фокус на ячейку, над которой проходил мышь.
А вот дальше проще - узнай какая это колонка, какая запись по счету (из Table/Query) и перемнож их.


 
ЮЮ   (2002-09-12 03:27) [3]

>видимой части DBGrid

В DBGride нет невидимой части. Его DataLink содержит ровно столько записей, сколько может быть отражено в Gride, т.о. DBGrid показывает все записи DataLink-а


 
Andrew_   (2002-09-12 10:19) [4]

Так что, никто не знает?
В конечном итоге мне необходимо определить номер записи (RecNo), над которой находится указатель мыши не выбирая эту ячейку.


 
ЮЮ   (2002-09-12 10:25) [5]

А без RecNo подойдет? Может быть достаточно доступа ко всем полям той записи, которая в данный момент находится под мышью?


 
Andrew_   (2002-09-12 10:29) [6]

Может быть и достаточно, дело за малым, определить номер записи, над которой находится мышка.


 
ЮЮ   (2002-09-12 10:42) [7]

>дело за малым, определить номер записи, над которой находится мышка
Опять пресловутый номер записи. У 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 14:16) [8]

Спасибо. Все получилось.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.10.03;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.006 c
3-7834
orion_st
2002-09-12 13:05
2002.10.03
Связаные ссылки


1-7891
Eva
2002-09-23 12:31
2002.10.03
перекачка данных по расписанию


14-8150
matvey
2002-09-09 14:08
2002.10.03
Прокси


6-8104
kostik78ua
2002-07-31 14:53
2002.10.03
NMStrm+клиент/сервер


14-8173
Weare
2002-09-10 11:13
2002.10.03
Помогите разобраться





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский