Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
1

Проблема с временем

05.04.2019, 22:43. Показов 741. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет и заранее большое спасибо
В форме добавление мероприятия мне нужно сделать чтобы, если вдруг пользователь ведет в поле "время окончание" раньше время чем которое указано в поле "время начала" то выскакивала ошибка "Неправильно указано время, т.к время окончание не может быть раньше времени начала мероприятия"
Миниатюры
Проблема с временем  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.04.2019, 22:43
Ответы с готовыми решениями:

Проблема с временем
Возникла проблема при работе с компонентом TDateTime. Была поставлена задача - в TDateTimePicker...

Проблема с временем моделирования
Generate (Exponential(1,0,17)); QUEUE Cher; SEIZE vvid; DEPART Cher; ADVANCE...

Проблема с датой-временем в логах
День добрый всем. У меня появилась такая проблема: Установил CentOS-7 сервер и поднял для...

Расчет тройных интегралов (проблема со временем расчета)
Здравствуйте. Проблема связана с расчетом тройных интегралов, а именно при одних значениях...

18
231 / 163 / 54
Регистрация: 26.10.2014
Сообщений: 928
06.04.2019, 07:53 2
вы вводите время в edit?? используйте хотя бы maskedit....

Добавлено через 8 минут
В идеале использовать datetimepicker, свойство format установить HH:MM
в обработчике события OnChange обоих datetimepicker прописать условие

Delphi
1
if datetimepicker1.time>datetimepicker2.time then ShowMessage('Неправильно указано время, т.к время окончание не может быть раньше времени начала мероприятия');
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
06.04.2019, 21:43  [ТС] 3
Цитата Сообщение от mac1eod Посмотреть сообщение
В идеале использовать datetimepicker
но как сделать чтобы " datetimepicker" это время забирал из базы данных access ?
0
231 / 163 / 54
Регистрация: 26.10.2014
Сообщений: 928
06.04.2019, 22:16 4
точно так же как и дату
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
07.04.2019, 12:02  [ТС] 5
Цитата Сообщение от mac1eod Посмотреть сообщение
точно так же как и дату
так нет вкладки DataSource
0
231 / 163 / 54
Регистрация: 26.10.2014
Сообщений: 928
07.04.2019, 12:21 6
Конечно нет, этот комплимент не предназначен для работы с датасетом непосредственно, не смотря на это приспособить его для выполнения ваших пожеланий совсем не сложно. Всего лишь надо взглянуть более широко на проблему.
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
07.04.2019, 12:45  [ТС] 7
Цитата Сообщение от mac1eod Посмотреть сообщение
более широко на проблему
ну а всё таки что мне сделать то?
0
231 / 163 / 54
Регистрация: 26.10.2014
Сообщений: 928
07.04.2019, 13:18 8
Delphi
1
DateTimePicker1.DoAsIWant:=true;
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
07.04.2019, 15:14  [ТС] 9
Цитата Сообщение от mac1eod Посмотреть сообщение
DoAsIWant
идентификатор не найден
0
1074 / 987 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
07.04.2019, 15:52 10
Свойство Kind компонента TDateTimePicker установить в значение dtkTime.
Если надо отсечь секунды, в свойстве Format вписать шаблон: hh:mm
0
Модератор
9267 / 6045 / 2380
Регистрация: 21.01.2014
Сообщений: 25,823
Записей в блоге: 3
07.04.2019, 18:09 11
Цитата Сообщение от st1x Посмотреть сообщение
если вдруг пользователь ведет в поле "время окончание" раньше время...
Цитата Сообщение от st1x Посмотреть сообщение
но как сделать чтобы " datetimepicker" это время забирал из базы данных access ?
st1x, Зачем DateTimePiker-у что-то "забирать" из БД? У Вас по первой цитате пользователь должен что-то водить в БД, т.е. осуществлять совсем противоположную "забиранию" операцию... Но, в любом случае, простейший запрос с параметрами спокойненько решает Вашу проблему... А если Вы пользуетесь допотопными Edit, Insert, Post и DB-Aware компонентами... Ну, тады, ой...
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
08.04.2019, 20:28  [ТС] 12
Цитата Сообщение от D1973 Посмотреть сообщение
"забирать" из БД?
, давайте я вам объясню, это форма добавления и редактирования мероприятия, все мероприятия занесены в базу access,эта форма подключена к базе, мне нужно чтобы "время окончание" не могло быть раньше "времени начала" и всё, подскажите как это реализовать
0
Модератор
9267 / 6045 / 2380
Регистрация: 21.01.2014
Сообщений: 25,823
Записей в блоге: 3
09.04.2019, 01:46 13
1. Время само по себе, без даты - понятие абстрактное. В Дельфи недаром базовым типом является тип TDateTime, т.е. время в совокупности с датой. Технически, этот тип представляет собой число с плавающей точкой, где целая часть числа отвечает за дату, а дробная - за время. Вы можете сравнить на больше-меньше между собой два действительных числа? Да запросто! Что же мешает сравнить ваши переменные типа TDateTime?
2. Никогда не позволяйте пользователю что-то вводить руками, если есть возможность выбрать нужные данные - ну, если только не хотите огород городить из 100500 не нужных проверок с преобразованиями типов...
Вот в Вашем случае... Создать для одного компонента DateTimePicker событие OnChange, написать в нем одну строку
Delphi
1
2
3
4
procedure TForm1.DateTimePicker1Change(Sender: TObject);
begin
  if DateTimePicker2.Time < DateTimePicker1.Time then DateTimePicker2.Time := DateTimePicker1.Time;
end;
и назначить этот обработчик второму DateTimePicker - и все Ваша проблема решена. Теперь пользователь просто не сможет ввести во второй DateTimePicker время меньшее, чем в первом.
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
09.04.2019, 11:02  [ТС] 14
Цитата Сообщение от D1973 Посмотреть сообщение
и назначить этот обработчик второму DateTimePicker - и все Ваша проблема решена. Теперь пользователь просто не сможет ввести во второй DateTimePicker время меньшее, чем в первом.
это понял, спасибо, но как DateTimePicker подключить к бд ? там нет вкладки datasource
0
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
09.04.2019, 11:22 15
а зачем его к БД подключать?
0
231 / 163 / 54
Регистрация: 26.10.2014
Сообщений: 928
09.04.2019, 13:20 16
Цитата Сообщение от st1x Посмотреть сообщение
там нет вкладки datasource
она есть только у DBAware компонентов, проще говоря - у компонентов которые начинаются с DB.
перестаньте ее искать, смиритесь, придется писать код
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
16.04.2019, 18:50  [ТС] 17
Цитата Сообщение от mac1eod Посмотреть сообщение
В идеале использовать datetimepicker, свойство format установить HH:MM
в обработчике события OnChange обоих datetimepicker прописать условие
если я сделаю так, данные не будут заносится в базу, а планируется не один пользователь
0
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
17.04.2019, 22:56  [ТС] 18
Можно закрывать эту тему
0
669 / 559 / 242
Регистрация: 26.11.2012
Сообщений: 2,191
18.04.2019, 04:47 19
Цитата Сообщение от st1x Посмотреть сообщение
а планируется не один пользователь
И использовать Access. Еще прибавить к этому использование ADOTable задача превращается в неразрешимую.
0
18.04.2019, 04:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.04.2019, 04:47
Помогаю со студенческими работами здесь

Проблема со временем обработки запроса в группе VLC плееров
Здравствуйте, у меня проблема, у меня есть группа VLC плееров со связанными с ними текстбоксами,...

Как получить разницу между текущем временем и временем создания файла?
Пробую так #include &lt;time.h&gt; time_t timer; time(&amp;timer); тут timer = 1418974297 милисекунд...

Вычислить промежуток времени между текущей датой/временем и временем, введенным пользователем
Создайте новое приложение. Пакет приложения назовите com.ВАШЕ_ИМьЯ.time_span. Функционал...

Определить интервал между текущим временем и временем до звонка
Написать программку отсчитывающую время от текущего времени до конца урока


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru