Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];

Вниз

Работа с Датой и Временем   Найти похожие ветки 

 
DDi   (2002-09-07 05:12) [0]

Приветствую, уважаемые!
У меня есть два вопроса по использованию Data и Time в Delphi.
1). Почему не работает такой код:
if (Time=DateTimePicker1.Time) and (Date=DateTimePicker2.Date) then
...

а, вот этот проходит без проблемм:
if (TimeToStr(Time)=TimeToStr(DateTimePicker1.Time)) and (DateToStr(Date)=DateToStr(DateTimePicker2)) then
...

2). Как сравнить текущее время/дату и время/дату из DateTimePicker? Т.к. такой код не работает:
if (Time>=DateTimePicker1.Time) or (Date>=DateTimePicker2.Date) then
...


Зараннее спасибо всем ответившим!


 
MBo   (2002-09-07 06:39) [1]

1.
>Почему не работает такой код
Да работает он, но не совсем так, как задумано.
Вещественные числа представляются с ограниченной точностью, поэтому сравнивать их нужно осторожно, например, чтобы модуль разницы была в пределах некоего допуска.
При приведении к строке происходит округление, поэтому вероятность совпадения выше ;)

2. такой код тоже работает с теми же ограничениями

Статья А.Григорьева на delphi.Vitpc.com Helloworld
Неочевидные особенности вещественных чисел


 
TTCustomDelphiMaster   (2002-09-07 10:41) [2]

Дело в том, что функция time возвращает только время, т.е. ее результат всегда меньше 1. А функция Date возвращает целое число, т.е. число дней без часов минут и т.д.
А вы смотрели чему равно DateTimePicker1.Time и DateTimePicker2.Date? Если нет то проверьте и сделайте выводы.

ShowMessage(floattostr(time)+#13#10+
floattostr(DateTimePicker1.Time));
ShowMessage(floattostr(date)+#13#10+
floattostr(DateTimePicker2.Date));



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.071 c
1-61109
AM
2002-09-10 10:01
2002.09.19
QReport


1-61146
Valeris
2002-09-05 18:34
2002.09.19
Operation must use an updateable query


14-61261
Turalyon
2002-08-20 08:37
2002.09.19
Антивирус


3-60971
Igor_
2002-08-26 12:54
2002.09.19
IBExpress и транзакции.


3-61022
Denis_P
2002-08-28 15:54
2002.09.19
DBLookupComboBox, KeyValue, два ключевых поля... Что делать?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский