mina.azarm
دوشنبه 04 خرداد 1388, 11:55 صبح
سلام
من دو editbox دارم که می خواهم وقتی در اولی مثلا 1387/10/10 را زدم و در دومی مثلا 1388/03/04 را زدم در editbox3 نوشته شود. 3 ماه و 26 روز
یا اگر اولی بود. 1387/10/10 و دومی 1388/11/20 در سومی نوشته شود 1 سال و 1 ماه و 10 روز
آیا کسی هست مرا کمک کند. لطفا برادری کنید و یک نمونه مثال برایم بنویسید. با سپاس فراوان
merced
سه شنبه 05 خرداد 1388, 23:24 عصر
function StrToYMD(S: String; var Y, M, D: Word): Boolean;
var
P: Integer;
begin
Result := False;
try
P := Pos('/', S);
if P > 0 then
begin
Y := StrToInt(Copy(S, 1, P - 1));
Delete(S, 1, P);
P := Pos('/', S);
if P > 0 then
begin
M := StrToInt(Copy(S, 1, P - 1));
D := StrToInt(Copy(S, P + 1, Length(S) - P));
Result := True;
end;
end;
except
end;
end;
كد بالا يه متن رو (كه تاريخ هست) به سه قسمت روز سال ماه تبديل مي كنه (سه تا متغير در نظر بگير و به عنوان پارامتر بفرست)
خوب . حالا چه جوري روي كاغذ دو تا تاريخ رو از هم كم مي كنيم ؟؟
13 2 1380
30 7 1387
معلومه كه از 30 از 13 كم نميشه و 31 تا به روز اضافه مي كني (توجه كن كه به ماه دقت كني 30 يا 31 يا 29 روزه است. سال رو در نظر بگير كه كبيسه نباشه ) و بقيه ماجرا ...
ghabil
چهارشنبه 06 خرداد 1388, 01:54 صبح
uses DateUtils
...
datediff(FirstDate, SecondDate);
shahrokhkian
چهارشنبه 06 خرداد 1388, 13:00 عصر
دوست عزیز اینم یک مثال
امیدوارم به کارت بیاد
موفق باشی.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.