![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| hug |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 27.7.2007 Репутация: нет Всего: нет |
Ребят, выручайте, горю
мыслей уже больше нет значит так пишу класс. "Всплывающая подсказка". при наведении на что-либо выскакивает форма, которая описывается ХМL. Ну и дальше с этой формы можно идти дальше, в завиисоти от ХML Так вот в этой всплывающей подсказке мне нужно использовать данные строки DataSet а, над которым завис курсор для дальнейшего использование в запросе.этот DataSet просмтаривается через TDBGrid. То есть наводим на нужную строку Grid он считывает данные выполняется запрос и в подсказке всплывающей выводится результат запроса Строку и столбец грида, над которым завис курсор мыши опеределя с помощью функции MouseCoord. он возвращает строку и столбец грида. получает положение курсора на экране. И все работает хорошо, пока весь датасет влазит в грид. Но когда появляется скрол и мы скролим и наводим мышью на строку, то MouseCoord возвращает строку грида а не датасета. То есть всегда фиксировано 1..10. Например ( если грид на 10 строк). так кот как бы мне узнать над какой строкой ДАТАСЕТА завис мой курсор?? может как то можно отщитать сколько записей грида скрол отщитал? может как то можно узнать какие записи датасета сейчас показывт грид при текущем положении скролла. Пример. Выводим Table 20 строк в Грид на 10 строк. прокручиваем грид на 10-20 строки. наводим мышкой на 3 строку грида и соотв на 13 строку датасета mousecoord показывает 3. вот как мне 13 получить? Спасайте:( |
|||
|
||||
| ALeXandrK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 3 Всего: 6 |
Мне кажется нужно не MouseCoord использовать, а MouseToCell(X, Y, ACol, ARow),
которая вернет номер строки и столбца (координаты ячейки) без проблем - сколько не скроль -------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
|||
|
||||
| hug |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 27.7.2007 Репутация: нет Всего: нет |
только у TDBGrid нет такого метода
это только у StringGrid |
|||
|
||||
| ALeXandrK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 3 Всего: 6 |
Может стоит попробовать перенести этот метод в TDBGrid?!
Если не получется или лень, тогд использовать сторонний DBGrid, где уже такой метод есть. К таким относится грид в библиотеке JEDI-VCL. -------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
|||
|
||||
| Savek |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 355 Регистрация: 10.4.2006 Где: Воронеж Репутация: нет Всего: 7 |
Примерно так
|
|||
|
||||
| hug |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 27.7.2007 Репутация: нет Всего: нет |
не пройдет в проекте уже куча гридов. менять их не выход |
|||
|
||||
| ALeXandrK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 3 Всего: 6 |
А добавить это свойство совсем никак?
Ну если никак, то тогда предлагаю встроить этот метот прям в оброботчик OnMouseMove (или через что ты там выводишь hint), если это возможно. Посмотри для начала этот метод - там же на входе только X,Y. Это как раз то, что тебе нужно. Осталось только алгоритм преобразования X,Y в Col и Row подсмотреть Это сообщение отредактировал(а) ALeXandrK - 28.7.2007, 20:42 -------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |