Главная страница
    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.011 c
1-7896
andrey_pst
2002-09-23 13:16
2002.10.03
Пункты в системном меню.


6-8092
phantom_17
2002-07-29 12:35
2002.10.03
Поиск


3-7864
Vladimir*
2002-09-13 10:31
2002.10.03
Query глючит?


4-8233
Lamer86
2002-08-16 11:07
2002.10.03
Как убрать программу с Toolbar


1-8014
Vitaly Krin
2002-09-21 17:58
2002.10.03
Как из типа Real в тип Integer, подскажите





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский