![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGrid
asd © (2006-01-05 22:17:00)Как в DBGrid определённой строчке или столбцу показывать свою подсказку Hint. Например, 1 строчка этой таблицы имеет HInt равный 1, 2 строчка этой таблицы имеет HInt равный 2.
asd (2006-01-07 18:59:00) [1]Спасибо всем за помощь, но я справился сам. Всё оказалось просто...
asd (2006-01-07 17:11:00) [2]Да, но у меня возникает одна проблема: я не знаю кода обращения к определённой строке DBGrid, как узнать, что данная строчка выделена. Тогда бы я проверял: если выделена нужная строчка, то в DBGrid присвоить подсказку не составит труда. Помогите? Если нетрудно, то напишите пример кода. Спасибо.
sniknik (2006-01-07 16:41:00) [3]почему же неизвестно? валяется гдето в дайджестах любой желающий может их скачать и поискать.
(только там обсуждалось немного другое, насколько помню, с хинтом то проблем не было. там обсуждалось перемещается ли указатель в таблице при смене позиции в даталинке (т.е. имеет ли даталинк буфер))
а тут кстати совсем не идет вопроса о данных в хинте из таблици, а о какихто абстрактных просто "привязанных" к строкам грида. т.е. сдалай массив хинтов по количеству строк грида + написаное в [6] про координаты строки. и все дело сделано.
asd (2006-01-07 15:18:00) [4]Да, я был не прав, что ответ на мой вопрос простой.
Virgo_Style (2006-01-07 14:55:00) [5]В свое время была ветка, где sniknik и Johnmen обсуждали именно этот вопрос, решение, вроде бы, было найдено, но осталось неизвестным широкой публике :-)
В общем, получаем координаты ячейки, над которой курсор, с помощью DBGrid.MouseCoord, затем можно узнать, какому полю она соответствует через DBGrid.Fields... а вот затем начинается самое интересное - как определить, какой записи соответствует данная ячейка... и тут я уже не копенгаген.
Virgo_Style (2006-01-07 14:23:00) [6]вообще-то, пожалуй, я не прав.
а если надо рисовать подсказки по мере изменения положения указателя мыши - тут еще интереснее... боюсь, что вопрос все же непростой.
Virgo_Style (2006-01-07 14:16:00) [7]
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
DBGrid1.ShowHint:=true;
Hint:='clicked';
Application.ShowHint:=true;
end;
Естественно, нужно будет задействовать Column. Хотя в исходной формулировке, если нужна привязка к строкам, могут быть проблемы.
asd (2006-01-07 14:10:00) [8]Извините, но разве это сложный вопрос? Я просто только сейчас с ним столкнулся и у меня мало о нём информации. Надеюсь, что кто-нибудь ответит на этот вопрос.
asd (2006-01-06 15:24:00) [9]Случайно. А ответ?
Desdechado (2006-01-05 23:05:00) [10]зачем дублить?
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1136482829&n=18