نمایش نتایج 1 تا 6 از 6

نام تاپیک: تشخیص ایام هفته از روی تاریخ

  1. #1
    کاربر دائمی آواتار aleas2
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    بم
    پست
    903

    تشخیص ایام هفته از روی تاریخ

    سلام خسته نباشید کسی میدونه تو vb6 از رو تاریخ میلادی وشمسی هرکدوم چجوری میشه مثلا تاریخ میلادی بهت میدن بگی چند شنبه هسته؟یا تاریخ شمسی میدن بگی چند شنبه هسته؟

  2. #2
    کاربر دائمی آواتار milad-fa
    تاریخ عضویت
    دی 1388
    محل زندگی
    گیلان
    پست
    220

    نقل قول: تشخیص ایام هفته از روی تاریخ

    با سلام،
    برای تاریخ میلادی خود vb یک دستور به اسم weekday داره که خروجی بصورت int یا عدد هست.
    که اعداد بین 1 تا 7 هستش.
    1 یعنی یکشنبه
    2 یعنی دوشنبه
    .
    .
    .
    7 یعنی شنبه
    که با یک select case راحت میتونی روز رو بدست بیاری.
    برای تاریخ شمسی هم یک سری ماژول های آماده هستش که میتونی استفاده کنی یا میتونی تاریخ شمسی رو به میلادی تبدیل کنی بعد روز رو به دست بیاری.

  3. #3
    کاربر دائمی آواتار M_Maskout
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    تهران
    سن
    45
    پست
    150

    نقل قول: تشخیص ایام هفته از روی تاریخ

    سلام
    چرا از همون DLLی که تو تاپیک دیگه ضمیمه کردم، استفاده نمی‌کنید. اون خیلی عالیه. و تمام توابع کار با تاریخ‌ها رو که VB داره، برای تاریخ شمسی، باز نویسی کرده (مثلاً تابع ShamsiDiff برای به دست اوردن اختلاف دو تاریخ شمسی). اگه قصد شما نوشتن یه برنامه کاربرد (حتی پروژه‌های دانشگاهی) هست، استفاده از اون DLL قطعاً بهتر (و البته حرفه‌ای تر) از کد نویسی هست.
    سال‌ها پیش تو یه نرم افزار که با پاسکال نوشته بودم از کد زیر برای به دست اوردن شماره‌ی روز هفته، در تاریخ دلخواه شمسی، استفاده کردم. یادم نیست که چجوری به این کد رو نوشتم، فقط می‌دونم ابتکار خودمه (متأسفانه اون موقع‌ها اینترنت خیلی رونق نداشت) و از سال 79 تا حالا داره تو همون برنامه کاملاً درست کار می‌کنه.
    من اون رو برای شما به VB تبدیل کردم. فقط خواهش می‌کنم، توضیح نخواهید، چون واقعاً یادم نیست که چه جوری به این کد رسیدم، ولی یادم هست که خیلی روش کار کردم و با آزمایش و خطا کد صحیح رو پیدا کردم.

    Function DayOfWeek(Year As Integer, Month As Integer, Day As Integer) As Integer
    Dim yr As Integer, century As Integer
    Select Case Month
    Case 1, 11, 12: Month = Month + 3
    Case 2, 3, 10: Month = Month + 6
    Case 4, 5, 6, 8, 9: Month = Month + 1
    Case 7: Month = Month + 4
    End Select
    century = Year \ 100
    yr = Year Mod 100
    DayOfWeek = (((26 * Month - 2) \ 10) + Day + yr + (yr \ 4) + (century \ 4) - (2 * century)) Mod 7
    End Function

    این تابع یه عدد بین 0 تا 6 برای شنبه تا جمعه بر می‌گردونه. برای فراخونی اون، باید سال، ماه و روز تاریخ شمسی رو به عنوان پارامتر به اون وارد کنید و عدد به دست اومده رو استفاده کیند.

    راستی؛ خطاب به مدیران سایت: چند روز هست کدهای نوشته شده تو پستهای ارسال شده برای من درست نمایش داده نمی‌شه و تمام کدها تو یه خط خیلی طولانی و پست سر هم دیده می‌شه. من از IE 8 استفاده می‌کنم و به همین خاطر مجبور شدم Fire Fox نصب کنم. البته تو فایر فاکس هم چیز درسته. تو چندتا دستگاه دیگه هم تست کردم همین مشکل رو داره. لطفاً برای رفع این اشکال بنده رو راهنمایی کنید.

  4. #4
    کاربر دائمی آواتار aleas2
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    بم
    پست
    903

    نقل قول: تشخیص ایام هفته از روی تاریخ

    نقل قول نوشته شده توسط M_Maskout مشاهده تاپیک
    سلام
    چرا از همون DLLی که تو تاپیک دیگه ضمیمه کردم، استفاده نمی‌کنید. اون خیلی عالیه. و تمام توابع کار با تاریخ‌ها رو که VB داره، برای تاریخ شمسی، باز نویسی کرده (مثلاً تابع ShamsiDiff برای به دست اوردن اختلاف دو تاریخ شمسی). اگه قصد شما نوشتن یه برنامه کاربرد (حتی پروژه‌های دانشگاهی) هست، استفاده از اون DLL قطعاً بهتر (و البته حرفه‌ای تر) از کد نویسی هست.[/B]
    سلام اون که کار نکرد نمیشه به vb6 معرفیش کرد خطا مید اینم عکس خطا
    untitled.JPG

    -------------
    ضمنا" یه سوال داشته میشه مثلا ساعت تاریخ امروز رو به برنامه بگی و بگی ده سال و دورزو و ساعت دگه ساعت چنده؟ااگر شدنی بگو یه تاپیک دگه بزنم اگر شدنی نیست نزنم

  5. #5
    کاربر دائمی آواتار M_Maskout
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    تهران
    سن
    45
    پست
    150

    نقل قول: تشخیص ایام هفته از روی تاریخ

    نقل قول نوشته شده توسط aleas2 مشاهده تاپیک
    سلام اون که کار نکرد نمیشه به vb6 معرفیش کرد خطا مید اینم عکس خطا
    untitled.JPG
    سلام
    برای استفاده از هر فایل DLL یا OCX تو ویندوز، باید اون فایل رو تو ویندوز ثبت (Register) کنید. اون وقت می‌تونید از کلاس(های) اون DLL یا OCX استفاده کنید.
    برای ثبت اینجور فایل‌ها، از برنامه RegSVR32.Exe که تو مسیر Windows\System32 هست باید استفاده کنید. برای اینکار، دستور زیر رو تو پنجره‌ی Run اجرا کنید:

    REGSVR32 DLL مسیرکامل و نام فایل

    بعد اچرای دستور بالا، تو VB از منوی Project، آیتم References...‎ رو اجرا کنید و تو لیست نمایش داده شده، دنبال عبارت OxinSoft Hijri Shamsi calender functions بگردید. و اون رو تیک بزنید و پنجره رو با Ok ببندید.
    ما بقی کار (استفاده از توابع تاریخ شمسی) رو هم توی فایل Help همراه ضمیمه پیدا می‌کنید.

    نقل قول نوشته شده توسط aleas2 مشاهده تاپیک
    ضمنا" یه سوال داشته [داشتم] میشه مثلا ساعت تاریخ امروز رو به برنامه بگی و بگی ده سال و دورزو و [یه] ساعت دگه [دیگه] ساعت چنده؟ااگر شدنی بگو یه تاپیک دگه بزنم اگر شدنی نیست نزنم
    بطور قطع شدنی هست!
    همونطور که خودتون اشاره کردید، بهتره برای این سؤال، یه تاپیک جدید ایجاد کنید.

  6. #6
    کاربر دائمی آواتار ramzdar
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    رفسنجان
    پست
    243

    Cool نقل قول: تشخیص ایام هفته از روی تاریخ

    سلام
    میتونی از این سورس استفاده کنی.
    توش یه روش جدید ارائه کردم.
    البته فقط مخصوص سال 90 هست.
    فایل های ضمیمه فایل های ضمیمه

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •