Вниз
Скачать: CL | DM;

Даты   Найти похожие ветки 

 
maxgeron   (2002-07-12 14:22) [0]

Мастера Дельфи! Подскажите в каком направлении двигаться. Есть две даты между которыми нужно подсчитать количество дней. Наверное нужно преобразовать дату (например из TDateTimePicker) в число, вычислить разницу, и сделать обратное - число преобразовать в дату. Со обратным преобразованием все нормально:
procedure TForm1.Button1Click(Sender: TObject);
var
k:double;
begin
try
k:=StrToFloat(Edit1.Text);
except
end;
Edit2.Text:=FormatDateTime("dd.mm.yyyy hh:mm:ss",k);
end;
а вот с прямым не получается...


 
Kaban ©   (2002-07-12 14:24) [1]

Количество дней между двумя датами = Round(Last_Date)-Round(First_Date)


 
Kaban ©   (2002-07-12 14:26) [2]

ага, не то
вместо k:=StrToFloat(Edit1.Text);
StrToDateTime


 
Johnmen ©   (2002-07-12 14:30) [3]

Удивительное постоянство этого вопроса ! :))))

1. Int(Last_Date)-Int(First_Date)
2. Int(Last_Date-First_Date)

Разная смысловая нагрузка, но ты вдумайся, и поймешь :)


 
maxgeron   (2002-07-12 14:31) [4]

А почему не то, ведь мы присвоим переменной число? За ответ спасибо, попробую.


 
Kaban ©   (2002-07-12 14:33) [5]

д, ошибочка вышла round к ближайшему округляет


 
Praco ©   (2002-07-12 14:34) [6]

RXLib
DateUtil.pas

DateDiff - Определяет разницу между датами, заданными Date1 и Date2 в днях, месяцах и годах.
DaysBetween - Вычисляет число дней между датами Date1 и Date2,
DaysInPeriod - Вычисляет число дней между датами Date1 и Date2


 
Kaban ©   (2002-07-12 14:35) [7]

кстати, есть подозрение, что Int(Last_Date-First_Date)
не прокатит


 
BAY ©   (2002-07-12 14:35) [8]

>Kaban
Ага. Тут Trunc надо


 
Johnmen ©   (2002-07-12 14:47) [9]

Да, конечно Trunc !


 
maxgeron   (2002-07-12 14:52) [10]

Спасибо всем за участие! Получилось прямое преобразование.
procedure TForm1.Button2Click(Sender: TObject);
var
n:double;
begin
n:=Int(DateTimePicker1.Date);
Edit3.Text:=FloatToStr(n);
end;
Пока это подойдет, а с остальными подсказками попробую позднее.


 
Johnmen ©   (2002-07-12 15:01) [11]

>maxgeron (12.07.02 14:52)

Интересно, а в чем информативность сего ?


 
maxgeron   (2002-07-12 15:29) [12]

>Johnmen
Ни в чем, просто получил цифру из даты. Это тот минимум, который был нужен.


 
MBo ©   (2002-07-12 15:38) [13]

>maxgeron
Ты бы посмотрел в хелпе описание TDateTime, все будет ясно


 
Anatoly Podgoretsky ©   (2002-07-12 15:51) [14]

Ты получил цифру из цифры, правда только целую часть
Тебе действительно надо посмотреть хелп о типа TDateTime



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.009 c
14-81459
Pro
2002-06-28 09:50
2002.07.25
редактор hlp


1-81338
Юлиана
2002-07-12 20:54
2002.07.25
beep


14-81435
Wild
2002-06-27 14:47
2002.07.25
Hint в Дельфях (W2K, D6)


3-81207
wHammer
2002-07-05 12:30
2002.07.25
Приношу извинения за затерный вопрос...


7-81507
vlad0007
2002-04-11 20:02
2002.07.25
Okey кто нить знает???




   Наверх