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

Вниз

Дата и время в дельфи   Найти похожие ветки 

 
unicode ©   (2004-04-06 12:21) [0]

Проблема такая... есть время 01:00 но это не час утра а 01:00 ночи... и есть другое время 23:00 вечера.. задача такая найти разницу между ними но не в 22 часа как это делает дельфи, а настоящую разницу между ними которая фактически 2 часа... как дельфи заставить понять это .. Заранее Спасибо..


 
Anatoly Podgoretsky ©   (2004-04-06 12:24) [1]

Это не возможно


 
jack128 ©   (2004-04-06 12:24) [2]


> но не в 22 часа как это делает дельфи

А как это дельфи получила 22 часа?
Date1 := EncodeDate(2004, 1, 10) + EncodeTime(23, 0, 0, 0);
Date2 := EncodeDate(2004, 1, 11) + EncodeTime(1, 0, 0, 0);

ShowMessage(TimeToStr(Date2 - Date1));


 
KapitanSerg ©   (2004-04-06 12:25) [3]

А время то в каком формате? Если TDateTime, то проблема отсутствует!


 
Anatoly Podgoretsky ©   (2004-04-06 12:25) [4]

jack128 ©   (06.04.04 12:24) [2]
У него только время!!!


 
Digitman ©   (2004-04-06 12:26) [5]


> как дельфи заставить понять это


использовать не TTime, а TDateTime


 
unicode ©   (2004-04-06 12:30) [6]

дата может быть только у одного... то есть в правой части
ддопустим 01:00 это константа а справа есть 02.01.2004 23:20:00 а если так то тогда что....


 
han_malign ©   (2004-04-06 12:30) [7]

>01:00 но это не час утра а 01:00 ночи...
- здрасте приехали, а еще час дня и час вечера - не слишком ли много "часов" в сутках получится?


 
jack128 ©   (2004-04-06 12:31) [8]


> использовать не TTime, а TDateTime

И что это даст?

> У него только время!!!

точной даты знать не обязательно, достаточно знать разность дат.. Если это не известно, то вопрос, конечно, бредовый..


 
han_malign ©   (2004-04-06 12:32) [9]

>ддопустим 01:00 это константа а справа есть 02.01.2004 23:20:00
- и откуда интересно компилятор должен узнать что был переход через сутки, и причем только через одни?


 
unicode ©   (2004-04-06 12:33) [10]

<- здрасте приехали, а еще час дня и час вечера - не слишком ли много "часов" в сутках получится?
/I> нет не слишком если учесть что 1 дня это 13:00...


 
KapitanSerg ©   (2004-04-06 12:34) [11]

>И что это даст?
Тогда разницу в часах можно получить простыи вычитанием вчерашней даты из сегодняшней!


 
Digitman ©   (2004-04-06 12:48) [12]


> jack128 ©   (06.04.04 12:31) [8]


см. [11]


 
Anatoly Podgoretsky ©   (2004-04-06 13:00) [13]

KapitanSerg ©   (06.04.04 12:34) [11]
При наличии даты, чего по вопросу нет. [0] [6]


 
KapitanSerg ©   (2004-04-06 13:05) [14]

>Anatoly Podgoretsky ©   (06.04.04 13:00) [13]
Автора!!!!!!!!!!!!
Ну, что мoлчим?


 
Anatoly Podgoretsky ©   (2004-04-06 13:07) [15]

Ну был автор, все равно ничего конкретного не сказал, думаешь что ни будь изменится?


 
Ega23 ©   (2004-04-06 13:19) [16]

А если первое время - 22 часа, а второе - 23, то какая разница будет? 1 час, 11 часов или 23 часа?


 
unicode ©   (2004-04-06 13:58) [17]

первое вермя всегда являеться константой но только время даты там нет а т.е. допустим 01:00 ночи...справа от него стоит дата которая по времени вероятней всего будет раньше а т.е.
2004-01-01 23:30:00 по сути она действительно меньше на полтора часа а вот как ее вычислить?


 
Ega23 ©   (2004-04-06 14:05) [18]

По часовой стрелке двигаться нужно, или против? Или туда, куда ближе?


 
KapitanSerg ©   (2004-04-06 14:11) [19]

Не понял, так "01:00 ночи" это TTime?


 
Anatoly Podgoretsky ©   (2004-04-06 14:18) [20]

unicode ©   (06.04.04 13:58) [17]
Если она меньше, то прибавь 24 часа и проведи вычитание времени, можно наоборот, сначала вычитание, потом прибавление.


 
Fredericco ©   (2004-04-06 14:30) [21]

Может
Min((Date1-Date2),(Date2-Date1));
?


 
}|{yk ©   (2004-04-06 14:57) [22]

Сдается мне что время-то может храниться (в крайнем случае м.б. преобразовано) в секундах. И отнимай сколько влезет. Только прибавлять надо умеючи :)


 
fatal ©   (2004-04-06 15:21) [23]

Что Вы мудохаетесь.
В Delphi TDateTime - есть число с плавающей точкой
целая часть - дни, дробная часть - часы

пример
0.00 - 31.12.1899 0:00
3.75 - 02.01.1900 18:00

DateTimePicker3.Time:=DateTimePicker2.Time-DateTimePicker1.Time; (=2)
DateTimePicker1.Time:={01:00}
DateTimePicker1.Date:={07.04.2004}
DateTimePicker2.Time:={23:00}
DateTimePicker2.Date:={06.04.2004}


 
Дремучий ©   (2004-04-06 15:38) [24]

в орешник -- после ветки об иконке в трее. :))



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

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

Наверх




Память: 0.49 MB
Время: 0.034 c
1-1082015581
siriusP
2004-04-15 11:53
2004.05.02
Как сохранить, загрузить содержимое фрейма в Bitmap?


14-1081665335
Afn
2004-04-11 10:35
2004.05.02
Web Money


1-1081837076
BorisMor
2004-04-13 10:17
2004.05.02
OwnerData


1-1082024944
Ivolg
2004-04-15 14:29
2004.05.02
Компонент Exel


1-1081920624
an-na2002
2004-04-14 09:30
2004.05.02
Проблема с TStringList





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский