|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.04.2011, 19:25 | #1 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
Работа с датой-временем
Есть компонент StringGrid, в нём есть 2 столбика, в котором есть 2 даты.
Разница между этими датами 3 месяца. Например в первом столбике 11/02/2011, во втором - 11/05/2011. Нужно сделать следующее: если дата на компе уже больше 11/05/2011, то необходимо закрасить "просроченную" ячейку красным цветом. По идее это не сложно реализовать, только я с датами раньше никогда не работал В нете поискал, там только общие сведения, а как сравнивать дату с ячейки и с компа - так и не понял. Помогите, если можете |
26.04.2011, 20:22 | #2 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,883
|
получить текущую дату - функция Date, преобразовать строку из грида в дату - StrTtoDate , сравнивать даты - CompareDate.
Если возникнут вопросы - в справке вся инормация по этим функциям есть. Красить примерно так : Код:
|
26.04.2011, 22:12 | #3 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
C датой - разобрался, а вот с закраской не получается. Он просто тупо закрашивает всю таблицу
Код:
|
26.04.2011, 22:12 | #4 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
Ой, забыл условие написать, теперь понятно
Последний раз редактировалось SwiP; 26.04.2011 в 22:18. |
26.04.2011, 22:32 | #5 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
Новая проблема, из-за того, что DrawCell постоянно обновляется, я не могу добавить новую строку в StringGrid (у меня кнопочка добавляет пустую строку), т.к там вместо даты будет пустота, и это вызывает ошибку EConvertError. Можно ли отключить автообновление DrawCell?
|
26.04.2011, 22:45 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А что проанализировать в DrawCell нельзя пустая ячейка или нет?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
27.04.2011, 00:24 | #7 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
А как запретить ввод в эту ячейку всякой ерунды? Если ввести не дату, то ошибки сыплются, желательно это под контроль взять
|
27.04.2011, 00:49 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Ну и контролируй по выходу из ячейки, очищай, например, если введенная дата дохлая
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
27.04.2011, 15:52 | #9 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,883
|
выход из режима редактирования ячейки можно отследить событием Onsetedittext
|
27.04.2011, 16:11 | #10 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
Чтобы пользователь мог ввести только дату можно сделать следующее:
Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа со временем и датой | Peenuts | Общие вопросы C/C++ | 3 | 10.01.2011 16:49 |
Проблема с датой и временем | Amen | PHP | 8 | 17.10.2009 22:11 |
нужно составить запрос с датой и временем! | student90 | БД в Delphi | 5 | 26.09.2008 05:43 |
Манипуляции с датой и временем. | Tatyana | БД в Delphi | 16 | 29.06.2007 19:19 |