![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Разность между двумя датами [D6, WinXP]
vova11 © (2002-06-16 16:00:00)Здравствуйте, не смейтесь над вопросом, мне 11 лет и я только начал заниматься Delphi. Объясните как узнать разность между двумя датами находящихся в edit1.text и edit2.text. Если не трудно прямо напишите строку.
Спасибо
Anatoly Podgoretsky (2002-06-17 20:11:00) [1]Поставим вопрос иначе, путь есть две даты 01.01.2002 23:59:00 и 02.01.2002 00:00:00
Какой ты ожидаешь результат?
vova11 (2002-06-17 17:44:00) [2]Спасибо, Всё получилось!!!!!!!!!!!!!!!!!!!!!!!
VDen (2002-06-17 17:30:00) [3]В составе Дельфей есть модуль DateUtils, а в нем функция DaysBetween. TDateTime делается из String функцией DateToStr.
Kaban (2002-06-17 16:27:00) [4]2 vova11
Если тебе нужна разница в днях, то подойдет простое вычитание из одной даты другой и округление:
Trunc(Date1-Date2);
Внук (2002-06-17 16:27:00) [5]Все-таки 2 - разность, а не частное.
Суммируя все сказанное:
...
var date1, date2:TDateTime;
...
begin
...
date1:=StrToDate(edit1.text);
date2:=StrToDate(edit2.text);
edit3.text:="Разность в днях:"+IntToStr(Trunc(date2-date1));
...
end;
-=CrazyFish=- (2002-06-17 16:24:00) [6]В библиотеке RX Library есть модуль dateutil.pas, который содержит уйму функций для работы с датами.
vova11 (2002-06-17 16:18:00) [7]Здравствуйте, я вчера задавал вопрос по разности двух дат,
но наверное не правильно его сформулировал.
В edit1.text дата 12.10.2002 в edit2.text 10.10.2002
что нужно написать чтобы в edit3.text
было частное от этих дат - 2
До высшего образования мне далеко.
MBo (2002-06-17 09:11:00) [8]>Сатир
А сам попробовал? ;)
последняя строка может быть такой
ShowMessage("Разность в днях:"+IntToStr(Trunc(date2-date1)));
DeMoN-777 (2002-06-17 09:03:00) [9]Login: Vova11
Дата рождения: 13.02.1990
Образование: высшее
DeMoN-777 (2002-06-17 09:01:00) [10]>Кулюкин Олег © (17.06.02 08:40)
Верно помтили =)
Кулюкин Олег (2002-06-17 08:40:00) [11]Если верить анкете, то vova11 имеет высшее образование :)
Сатир (2002-06-16 19:54:00) [12]значит, тебе нужно использовать функции преобразования строки в дату, а здесь главное, чтоб пользователь честно вводил дату.
значит, вводишь две переменных типа TDateTime, в которых будешь хранить первую и вторую даты, напр.
var date1, date2:TDateTime
а у же после этого и пользуешься функцией преобразования строки в дату:
date1:=StrToDate(edit1.text);
date2:=StrToDate(edit2.text);
ShowMessage("Разность:"+DateToStr(date2-date1));
привет.
Anatoly Podgoretsky (2002-06-16 16:06:00) [13]Разность делает путем вычитания одной даты из другой, а вот какое вычитание использовать, зависит от того какой результат требуется
MBo (2002-06-16 16:01:00) [14]в каком виде записаны даты и в каких единицах разность?