View Full Version : سوال: مقدار دهی به متغیر از نوع TDateTime
nilidelphi
شنبه 12 بهمن 1392, 09:21 صبح
با سلام خدمت دوستا
من دوتا متغیر دارم از نوع string که یکی ساعت و دیگری تاریخ رو نگه داری میکنه
حالا باید این دو متغییر رو در یک متغییر از نوع TDateTime باهم ذخیره کنم
ولی نمی دونم چجوری باید این دو متغییر رو در متغییری از نوع TDateTime وارد کنم.
ممنون میشم کمکم کنید
یوسف زالی
شنبه 12 بهمن 1392, 09:43 صبح
سلام.
StrToDate می تونه به شما کمک کنه. در این خصوص سرچ کنید. اما اگر لازمه بصورت ریاضی این کار رو انجام بدید بهتره برای شروع ببینید تاریخ متناظر با 0 چیه، و 1 چیه، به راحتی داستان میاد دستتون.
موفق باشید.
nilidelphi
یک شنبه 13 بهمن 1392, 09:01 صبح
دوست عزیز با تشکر از جوابی که دادید ولی من مشکلی با تبدیل رشته به تاریخ و ساعت ندارم که ه ه ه ه ه ه ه
مشکله من اینه که میخوام یک متغییر از نوع TDate و یک متغیر از نوع TTime دارم حالا میخوام این دو تا متغیر رو در یک متغیر از نوع TDateTime قرار بدم. همییییییین
حالا میخوام بدونم چطور این کار رو بکنم؟؟؟؟
Felony
یک شنبه 13 بهمن 1392, 10:17 صبح
var
Date: TDate;
Time: TTime;
DateTime: TDateTime;
begin
Date:= Now;
Time:= Now;
DateTime := Trunc(Date) + Time - Trunc(Time);
ShowMessage(DateTimeToStr(DateTime));
end;
nilidelphi
دوشنبه 14 بهمن 1392, 09:47 صبح
دوست گرامی felony
با تشکر
حالا یه مشکل دیگه برام پیش اومده وقتی از کد زیر استفاده میشه:
ShowMessage(DateTimeToStr(DateTime));
ساعت بصورت 12 ساعت درج میشه
حالا چطور میشه کاری کرد که 24 ساعته بشه؟؟؟
nilidelphi
دوشنبه 14 بهمن 1392, 10:38 صبح
در حقیقت میخوام ساعت در داخل متغییر TDateTime بصورت 24 ساعته ذخیره بشه
vcldeveloper
دوشنبه 14 بهمن 1392, 12:17 عصر
در حقیقت میخوام ساعت در داخل متغییر TDateTime بصورت 24 ساعته ذخیره بشه
متغیر TDateTime چیزی از نمایش 12 یا 24 ساعته نمیدونه، بلکه فقط یک عدد اعشاری هست که مقدار صحیحش برای تاریخ و مقدار عشاری اش برای ساعت استفاده میشه. نحوه نمایش این مقدار به صورت پیش فرض بستگی به تنظیمات نمایش تاریخ در سیستم عامل داره. اگر خودتون بخواید حالت نمایش را تعیین کنید، می بایست از DateTimeToStr به همراه پارامتر Format استفاده کنید.
مشکله من اینه که میخوام یک متغییر از نوع TDate و یک متغیر از نوع TTime دارم حالا میخوام این دو تا متغیر رو در یک متغیر از نوع TDateTime قرار بدم.
uses DateUtils;
function JoinDateTime(ADate: TDate; ATime: TTime): TDateTime;
begin
Result := DateOf(ADate) + TimeOf(ATime);
end;
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.