Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
1 / 1 / 0
Регистрация: 03.02.2014
Сообщений: 66

Неправильное отображение даты в DBGrid при редактировании

21.06.2015, 16:10. Показов 1799. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создаю программку в C++ Builder XE7. Необходимо, что бы в поле "ГРАФИК" корректно отображались даты.
С помощью приведенного кода добился правильного отображения даты в режиме просмотра, но не в режиме редактирования. Можно ли это как-то исправить или нет?
C++
1
dynamic_cast<TDateTimeField*>(Handbook->DBGrid->DataSource->DataSet->Fields->FindField("ГРАФИК"))->DisplayFormat = "hh:nn";
Миниатюры
Неправильное отображение даты в DBGrid при редактировании   Неправильное отображение даты в DBGrid при редактировании  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.06.2015, 16:10
Ответы с готовыми решениями:

Неправильное отображение даты
Всем здравствуйте. Знаю что по моему вопросу много написано, но все темы довольно давно открыты. Может быть уже появилось какое...

Как сделать чтобы курсор оставался на той же записи DBGrid и не перемещался при редактировании?
Добрый вечер. у меня есть запросы для DBGrid на удаление добавление и редактирование. Вопрос насчет редактирования. Оно работает, поля в бд...

Некорректное отображение даты dd.mm при редактировании поля DBGrid
Добрый день! Есть таблица DBGrid с колонкой дат, к ней подключена база Access через ADO. Нужно, чтобы дата отображалась без года:...

11
Модератор
 Аватар для D1973
9929 / 6467 / 2457
Регистрация: 21.01.2014
Сообщений: 27,423
Записей в блоге: 3
21.06.2015, 16:17
А так?
C++
1
dynamic_cast<TTimeField*>(Handbook->DBGrid->DataSource->DataSet->Fields->FindField("ГРАФИК"))->DisplayFormat = "hh:nn";
0
1 / 1 / 0
Регистрация: 03.02.2014
Сообщений: 66
21.06.2015, 16:27  [ТС]
Ошибка выходит(
Миниатюры
Неправильное отображение даты в DBGrid при редактировании  
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33405 / 21515 / 8236
Регистрация: 22.10.2011
Сообщений: 36,916
Записей в блоге: 12
21.06.2015, 16:41
Bor1and, выставь EditMask полю, тогда будет то, что нужно.
0
1 / 1 / 0
Регистрация: 03.02.2014
Сообщений: 66
21.06.2015, 16:47  [ТС]
volvo, Можно поподробнее, как это сделать?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33405 / 21515 / 8236
Регистрация: 22.10.2011
Сообщений: 36,916
Записей в блоге: 12
21.06.2015, 16:48
Лучший ответ Сообщение было отмечено Bor1and как решение

Решение

Точно так же:
C++
1
2
dynamic_cast<TDateTimeField*>
    (Handbook->DBGrid->DataSource->DataSet->Fields->FindField("ГРАФИК"))->EditMask = "!90:00;1;_";
1
1 / 1 / 0
Регистрация: 03.02.2014
Сообщений: 66
21.06.2015, 22:57  [ТС]
volvo, Спасибо большое, прям спасли

Добавлено через 6 часов 3 минуты
volvo, Только сейчас заметил, что минуты всегда равны "00"
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33405 / 21515 / 8236
Регистрация: 22.10.2011
Сообщений: 36,916
Записей в блоге: 12
21.06.2015, 23:58
Лучший ответ Сообщение было отмечено Bor1and как решение

Решение

Старая история. Чтобы нормально отображались минуты при редактировании - нужно использовать маску для длинного времени, а не для короткого: "!90:00:00;1;_", тогда правильно отображаются минуты, но зато появляются секунды... Как говорится - выбирай меньшее из двух зол
1
Модератор
 Аватар для D1973
9929 / 6467 / 2457
Регистрация: 21.01.2014
Сообщений: 27,423
Записей в блоге: 3
22.06.2015, 05:57
Bor1and, я смотрю твои скрины и сам себе думаю: а зачем тебе это поле (в смысле "График") типа TDateTime, если ты в нем, как я понимаю, выставляешь длительность рабочей смены? Ну и сделай ты его целочисленным, никогда еще не сталкивался, чтобы рабочая смена длилась, к примеру 8 часов 27 минут, всегда значения ровные. А даже если и так: сделай не целочисленное, а строковое, пиши туда "8:27", и потом, если надо, это значение легко переводится в TTime
0
1 / 1 / 0
Регистрация: 03.02.2014
Сообщений: 66
22.06.2015, 14:31  [ТС]
D1973, так это поле изначально имеет такой тип данных (Дата и время)
0
Модератор
 Аватар для D1973
9929 / 6467 / 2457
Регистрация: 21.01.2014
Сообщений: 27,423
Записей в блоге: 3
22.06.2015, 14:33
Bor1and, Ну дык ты же базу проектируешь, ты и меняй что надо и как надо.
0
1 / 1 / 0
Регистрация: 03.02.2014
Сообщений: 66
22.06.2015, 14:44  [ТС]
D1973, Ааа, так не получится, БД в другом месте, так сказать - оригинал не у меня
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.06.2015, 14:44
Помогаю со студенческими работами здесь

Неправильное отображение даты в Word при слиянии таблиц!!!
Помогите, кто может, пропадаю!!! При слиянии таблицы Access с Word неправильно отображаются даты, как я только не пробовал, у меня в...

Неправильное отображение даты при импорте данных из Excel в DataGridView
Привет Импортирую данные из Excel в DataGridView: private void button1_Click(object sender, EventArgs e) { ...

Неправильное отображение времени из таблицы в DbGrid-е
Привет! Столкнулся с проблемой: В базе данных, в ячейке находится время (12:12), но в программе в DBGrid время отображается (30.12.1899...

Отображение даты в DbGrid
все привет! в базе у меня храниться дата в формате - float в DBGrid - е она отображается на корректно, вместе 01.12.2016 и число ...

Падение сервера при редактировании DbGrid-а
при редактирование в dbgrid ошибка ( sql error lost connection to mysql server during query ) ошибка почему знаю но как исправить не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru