|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
вопрос о DateTimePicker
нужно чтобы дата в DateTimePicker2 не была равной дате в DateTimePicker1 или меньше даты в DateTimePicker1.
Пишу следующее Код:
if DateTimePicker2.Date<=DateTimePicker1.Date then begin Showmessage('Дата окончания введена неверно!'); Exit; end; Что не так? 34.jpg |
#2
|
||||
|
||||
Есть подозрение, что в свойстве Date у пикера ещё и время. Попробуй поставить одинаковые даты, но выбрать сначала дату окончания, а потом дату начала. Если даст ошибку - значит моя догадка верна.
Или поступи проще - пройдись отладчиком по строчкам и посмотри значения. Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#3
|
|||
|
|||
когда ввожу сначала дату окончания, а потом дату начала, то проглатывает даже если дата окончания < даты начала и если равны тоже
|
#4
|
||||
|
||||
Хм... обидно то, что у меня сейчас Delphi под рукой нет, только Lazarus... Ну, как мой друг говорит, "обидно, досадно, но ладно...." - сливай исходник куда-нибудь (предварительно почистив лишнее), желательно в zip, и я буду "ставить диагноз по фотографии".
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#5
|
|||
|
|||
много чистить прийдётся, там куча всякого ещё.. лучше так мысли вслух подскажите, как можно поменять условие, сразу проверю
|
#6
|
||||
|
||||
Феникс прав в своем предположении. В свое время тоже на эти грабли наступил. Несмотря на то что Date типа TDate, время там все равно присутствует. Т.к. в дробную часть записывается время, а оно вам как-раз не нужнео можно сделать так:
Код:
if Round(DateTimePicker2.Date)<=Round(DateTimePicker1.Date) then begin Showmessage('Дата окончания введена неверно!'); Exit; end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#7
|
|||
|
|||
с Round всё заработало. Спасибо огромное, товарищи!
|