LOGO

ترفندهای دلفی
نمونه کدهای آماده دلفی - دانلود آخرین نسخه های دلفی
  • banner 240x80px
  • banner 240x80px
  • banner 240x80px

تاریخ شمسی

با استفاده از تابع زیر می تونید تاریخ میلادی رو به تاریخ شمسی تبدیل کنید. این تابع تاریخ سیستم رو می گیره و معادل شمسی اون رو بر می گردونه . من یکسری تابع های دیگه دیدم که این کار رو انجام میدن ولی اکثرشون یه روزهایی اشتباه عمل می کردن ولی این تابع خیلی خیلی دقیقه و به هیچ عنوان اشتباه نمی کنه .

Function SHDate:String;

Const

 D : Array [0..11] of integer=(20, 19, 20, 20, 21, 21, 22, 22, 22, 22, 21, 21);

 P : Array [0..11] of integer=(11, 12, 10, 12, 11, 11, 10, 10, 10, 9, 10, 10);

 Mon: Array [0..11]of String=('01','02','03','04','05','06','07','08','09','10','11','12');

Var DateLocal:_SYSTEMTIME;

    Dm,Mm,Ym:Word;

    P1,D1,I,U,Rp,Ys,Ms,Ds,X:Integer;

    Sal,Mah,Roz:String;

begin

 GetLocalTime(DateLocal);

 Ym:=DateLocal.wYear;

 Mm:=DateLocal.wMonth;

 Dm:=DateLocal.wDay;

 Dm := Dm;

 U := 0;

 Rp:= 0;

 If (Ym Mod 4) = 0 Then U := 1;

 If ((Ym Mod 100 = 0) AND (Ym Mod 400 <> 0)) Then U := 0;

 Ys := Ym - 622;

 X := Ys - 22;

 X := X Mod 33;

 If ((X Mod 4 = 0) AND (X <> 32)) Then Rp := 1;

 I := Not(Rp-2) + NOT(U - 2) * 2;

 X := 0;

 If (I = 0) AND (Mm = 3) Then X := 1;

 If I = 0 Then I := 3;

 Ms := (9 + Mm) Mod 13;

 If Ms < 10 Then Ms := Ms + 1;

 D1 := D[Mm - 1];

 If (I = 1) AND (Mm > 2) Then D1 := D1 - 1;

 If (I = 2) AND (Mm < 3) then D1 := D1 - 1;

 P1 := P[Mm - 1];

 If (I = 1) AND (Mm > 2) Then P1 := P1 + 1;

 If (I = 2) AND (Mm < 4) Then P1 := P1 + 1;

 If (Dm > 0) AND (Dm <= D1) Then

   Begin

     Ds := P1 + Dm + X - 1;

     X := 1;

   End

 Else

   Begin

     Ds := Dm - D1;

     Ms := Ms + 1;

     If Ms = 13 Then Ms := 1;

     X := 2;

   End;

 If ((Mm = 3) AND (X = 2)) OR (Mm > 3) Then Ys := Ys + 1;

 Sal:=IntToStr(Ys);

 If Length(Sal)=1 then Insert('0',Sal,1);

 Mah:=Mon[Ms-1];

 Roz:=IntToStr(Ds);

 If Length(Roz)=1 then Insert('0',Roz,1);

 Result:=Sal+'/'+Mah+'/'+Roz;

 Delete(Result,1,2);

end;


دسته بندی :
» دانلود Delphi XE5 با لینک مستقیم + فعال ساز ( چهارشنبه ۱۰ مهر ۱۳۹۲ )
» دانلود Delphi XE4 با لینک مستقیم + فعال ساز ( شنبه ۱۸ خرداد ۱۳۹۲ )
» مشخصات CPU ( یکشنبه ۲۵ فروردین ۱۳۸۷ )
» نمایش فضای استفاده شده و بلا استفاده هارد ( جمعه ۱۶ آذر ۱۳۸۶ )
» تاریخ شمسی ( جمعه ۱۶ آذر ۱۳۸۶ )
» حرکت دادن کرسر ماوس ( جمعه ۱۶ آذر ۱۳۸۶ )
» تلفظ کلمات ( یکشنبه ۸ مهر ۱۳۸۶ )
» کنترل صدای ویندوز با دلفی ( سه شنبه ۳۰ مرداد ۱۳۸۶ )
» معرفی یکی دیگه از تخم مرغ های دلفی ( دوشنبه ۲۹ مرداد ۱۳۸۶ )
» تابعی برای نمایش زمان آغاز ویندوز ( یکشنبه ۲۱ مرداد ۱۳۸۶ )
» برنامه یکبار اجرا شود ( شنبه ۲۰ مرداد ۱۳۸۶ )
» باز کردن فایل های GIF با کامپوننت Image ( جمعه ۱۹ مرداد ۱۳۸۶ )
درباره ما

سعید ٍ طراح وبلاگ : سعید
ایمیل : saeed_mmv_64@yahoo.com
banner 240x200px