|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.10.2007, 16:34 | #1 |
Пользователь
Регистрация: 21.04.2007
Сообщений: 17
|
Раскрасить DBGrid
Здравствуйте, уважаемые программисты, помогите мне пожалуйста, буду очень признателен, мне нужно в программе реализовать одну штуку, опишу ниже:
1.Есть база данных сделанная в Database Desktop и оформлена в Delphi 6.0 2.Есть в ней два поля в каждой из существующих строк, первое - Дата приема, второе - Дата возврата(разница 21 день, допустим приняли-1.09.2007, вернуть должны 22.09.2007, причем заполнение ячеек происходит с помощью datetostr(date) и следовательно datetostr(date + 21)) 3.Нужно что-то типа напоминания, чтобы выделялись другим шрифтом(или вообще выделялись как-нибудь) те строки в таблице, у которых с момента приема к моменту возврата остается 2 дня(т.е. следовательно исходя из примера выше допустим сегодня 19.09.2007 и при запуске программы должна быть проверка и результат в виде выделения в таблице), если что-то не полностью понятно, пишите, всё дорасскажу спасибо огромнейшее заранее!!! |
26.10.2007, 16:59 | #2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Ничего сложного на горизонте не наблюдаю...
Используется обработка штатного события OnDrawDataCell для ДБГрида, т.е. при отрисовке проверяется ваше условие и при его выполнении строке или ячейке назначается красный шрифт (или красный фон с белым шрифтом). |
26.10.2007, 22:45 | #3 |
Пользователь
Регистрация: 21.04.2007
Сообщений: 17
|
HELP!!!
Спасибо за подсказку, но мне нужна помощь непосредственно с условием, буду рад если поможете...
|
27.10.2007, 09:06 | #4 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Код:
Код:
Последний раз редактировалось _SERGEYX_; 27.10.2007 в 09:11. |
27.10.2007, 12:12 | #5 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Заливка делается гораздо проще:
DBGrid1.Canvas.FillRect(Rect); Цитата:
У меня на "старичке" Р-2 400мгц я не замечаю процесса раскраски, все моментально происходит... Последний раз редактировалось mihali4; 27.10.2007 в 13:43. |
|
27.10.2007, 12:23 | #6 |
Пользователь
Регистрация: 21.04.2007
Сообщений: 17
|
HELP!!!
Спасибо огромное за помощь, но почему-то матерится на Field что он неописанный идентификатор, прикреплю файл скрина...
|
27.10.2007, 12:57 | #7 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Похоже, у вас ДБГрид не привязан ни к одному DataSet через DataSource...
Или у DataSet не определена привязка к базе... Сделайте, чтобы у вас в ДБГриде отображалась информация, а уж потом займитесь раскраской. Последний раз редактировалось mihali4; 27.10.2007 в 13:00. |
27.10.2007, 13:04 | #8 |
Пользователь
Регистрация: 21.04.2007
Сообщений: 17
|
HELP!!!
Всё привязано, просто может из-за того что все связи через datamodule?
|
27.10.2007, 14:17 | #9 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Это не влияет.
Вот обычно используемое мной универсальное решение: Добавляем в юниту процедурку: Код:
Цитата:
|
|
27.10.2007, 17:01 | #10 |
Пользователь
Регистрация: 21.04.2007
Сообщений: 17
|
HELP!!!
Спасибо всем кто отозвался и попытался помочь, но к сожалению ничего толком и не заработало...
Попрошу просто разобраться с тем почему у меня в DBGrid1DrawDataCell матюкается на TField скрин приведен выше(файл прикреплен)... Мне подоходит тот вариант так как меньше писанины может быть хоть он заработает и наконец-то у меня таблица начнет выделять поля... Ну а mihali4 спасибо за такой длинный пример, но мой мозг не смог понять что и как должно в таком коде работать, я всего лишь студент колледжа... Последний раз редактировалось alex_base; 27.10.2007 в 17:04. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
DBGrid | Valera | Помощь студентам | 4 | 22.04.2009 16:54 |
DBGrid | DOLBY | Компоненты Delphi | 29 | 08.10.2008 00:05 |
DBGrid | Ane4ka | БД в Delphi | 28 | 01.06.2008 10:00 |
Как раскрасить ячейку внутри StringGrid. | GarfieldX | Общие вопросы Delphi | 5 | 14.02.2008 21:59 |
Как раскрасить ячейки StringGrid'а в разные цвета в соответствии с условием? | monushka | Компоненты Delphi | 12 | 05.11.2007 23:44 |