تبلیغات :
خرید لپ تاپ استوک
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 17

نام تاپيک: دانلودکنید:TextBox با توانایی کار با تاریخ فارسی با کاربرد آسان

  1. #1
    اگه نباشه جاش خالی می مونه MTPROG's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    شهر 3500 ساله
    پست ها
    432

    پيش فرض دانلودکنید:TextBox با توانایی کار با تاریخ فارسی با کاربرد آسان

    لینک دانلود
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    هم من هم شما مطمئنن با چند کامپونینت فارسی کار کردیم که همه شون تاریخ رو درست تبدیل میکنند ولی من تا حالا با یک کامپونینت فارسی کار نکردم که User friendly یا کاربر پسندی تو کار کردن داشته باشه و از اکثر اونا که استفاده کردم کاربرهای برنامه ام از نحوی وارد کردن تاریخ گله مند بودند بنابراین سعی کردم که یک TextBox که توانایی کار با تاریخ هجری شمسی داشته باشه و خیلی هم بشه باهاش راحت کار کرد روطراحی کنم.
    اسم این کامپونینت رو FarsiDate.dll گذاشتم که با VB.NET 2008 نوشته شده است.
    تواناییها:
    1-با کلید Space تاریخ حال سیستم محاسبه و در داخل Textbox نوشته میشود
    2-با کلید Delete تاریخ پاک میشود
    3-با کلید Home چهار رقم سال انتخاب میشود
    4-با کلید End دو رقم روز انتخاب میشود
    5-با کلیدهای Left ,Right مکانمای صفحه کلید حالت انتخاب از سال به ماه و از ماه به روز و از روز به سال و برعکس عوض میشود
    6- با کلیدUp اگر روز انتخاب شده باشد 1 روز جلوتر و اگر ماه انتخاب شده باشد 1 ماه جلوتر و اگر سال انتخاب شده باشد 1 سال جلوتر میرود
    7- با کلیدDown اگر روز انتخاب شده باشد 1 روز عقب تر و اگر ماه انتخاب شده باشد 1 ماه عقب تر و اگر سال انتخاب شده باشد 1 سال عقب تر میرود
    8-با کلید page Up اگر روز انتخاب شده باشد 10 روز جلوتر و اگر ماه انتخاب شده باشد 3 ماه جلوتر و اگر سال انتخاب شده باشد 2 سال جلوتر میرود
    9-با کلید page Down اگر روز انتخاب شده باشد 10 روز عقب تر و ماه انتخاب شده باشد 3 ماه عقب تر و اگر سال انتخاب شده باشد 2 سال عقب تر میرود
    10-اگر روی Textbox کلیک سمت چپ کنید در هر کجا باشد آن قسمت انتخاب میشود
    11-با DoubleClick سال انتخاب میشود
    12-میتوانید تاریخ را با صفحه کلید تایپ کنید به این صورت که در هر قسمت از تاریخ باشید مثلا روز ، ماه یا سال تایپ از آنجا شروع میشود به اینصورت که هر عددی فشار میدهید بعد از صحت آن در جای مناسب قرار گرفته و مکانما به طرف عدد بعدی حرکت می کند
    13-مقدار تاریخ را میتوانید با تابع GetValue()و یا ThisText بخوایند مثلا MessageBox.Show(FarsiDate1.Getvalue()) یا MessageBox.Show(FarsiDate1.ThisText())
    14-مقدار تاریخ را میتوانید با تابع SetValue(strDate) یا ThisText تغییر دهید مثلاFarsiDate1.Setvalue(“1388/05/07”) و یا FarsiDate1.ThisText="1388/05/07"
    15-در رویداد KeyDowned میتونید کلید را گرفته و عملیات لازم مثل فوکوس شدن را انجام دهید
    16-تابع About هم مشخصات منو داره MessageBox.Show(FarsiDate1.About())
    لطفا دانلود کنید و امتحان کنید و اگر عیبی ، پیشنهادی ، بگی داره بگید تا اصلاح بشه
    نظر هم یادتون نره
    Last edited by MTPROG; 02-08-2009 at 08:28.

  2. 4 کاربر از MTPROG بخاطر این مطلب مفید تشکر کرده اند


  3. #2
    پروفشنال bad_boy_2007's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    ایران
    پست ها
    803

    پيش فرض

    چيز جالبي بود (البته هنوز كامل نگاش نكردم)
    ممنون
    ولي اگه سورسش رو ميزاشتي بد نبود ، شايد بچه ها كمك ميكردن كامل تر شه

  4. #3
    پروفشنال sari-1369's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    ساري
    پست ها
    766

    پيش فرض

    اگر کاربر یه تاریخی رو تایپ کرد و بعدش پشیمون شد و خواست کلا تاریخ رو از توی تکست باکس حذف کنه چی ؟؟ ( مثل اینکه از اول مقداری وارد نکرده )

  5. #4
    اگه نباشه جاش خالی می مونه MTPROG's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    شهر 3500 ساله
    پست ها
    432

    پيش فرض

    اگر کاربر یه تاریخی رو تایپ کرد و بعدش پشیمون شد و خواست کلا تاریخ رو از توی تکست باکس حذف کنه چی ؟؟ ( مثل اینکه از اول مقداری وارد نکرده )
    2-با کلید Escape تاریخ پاک میشود

  6. #5
    پروفشنال sari-1369's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    ساري
    پست ها
    766

    پيش فرض

    سورسش رو نمیزاری ؟؟

  7. #6
    اگه نباشه جاش خالی می مونه MTPROG's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    شهر 3500 ساله
    پست ها
    432

    پيش فرض سلام

    لینک بالا آپدیت شد.

    اینم از سورسش
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    دو تا تغییر اضافه شده
    1-حذف تاریخ از Escape به Delete تغییر داده شد
    2-در رویداد KeyDowned میتونید کلید را گرفته و عملیات لازم مثل فوکوس شدن را انجام دهید



    اما من یک مشکلی داشتم این که رویدادهای DeyDown ,Keypress ,textChange بعد از تبدیل کنترل به یک فایل DLL دیگه جوابگو نیست

    علتش اینه که حالتهای فوق در دو حالت یکی برای TextBox و یکی برای UserControl وجود داره که تو طراحی از رویدادهای TextBox استفاده شده و وقتی تبدیل به یک فایل میشه رویدادهای فوق برای UserControl محاسبه میشه برای همینه که هیچ عکس العملی در رویدادهای فوق بعد طراحی دیده نمیشه
    (اگه متوجه نشدید میتونید یه برنامه کوچک بنویسید که وقتی تاریخ عوض شد یک پیغام بده میبینی که عمل نمیکنه)


    چطور میشه این مشکل حل کرد
    Last edited by MTPROG; 02-08-2009 at 08:29.

  8. این کاربر از MTPROG بخاطر این مطلب مفید تشکر کرده است


  9. #7
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    سلام دوست عزیز...ممنون از سورس برنامه...
    Event رو امتحان کردم کار کرد....موقع تغییر متن..
    شما باید یک Event برای کنترل خود بسازید....
    من نمیدونم شما چطور اسم اینو گذاشتین کنترل نمیخوام بد بگم ولی شما اصلاً حتی یه متغیر برای متنش هم تعریف نکردین...
    اینم نمونه:

    کدهای زیر رو به کنترل اضافه کن:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    حالا کد زیر رو هم تو قسمت TxtDate_TextChanged اضافه کن:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    حالا یک Event به نام TextChanging و یک خاصیت متن ThisText به کنترل اضافه شد...
    با TextChanging میتونی بفهمی که آیا متن تغییر کرده یا نه....
    و با ThisText میتونی متن رو فراخوانی و تغییر بدی.

    توضیح کد خواستی در خدمتیم...
    موفق باشید و سربلند....

  10. 2 کاربر از عــــلی بخاطر این مطلب مفید تشکر کرده اند


  11. #8
    پروفشنال sari-1369's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    ساري
    پست ها
    766

    پيش فرض

    با این تغیرات جدید ، نسخه بعدیشو آپ نمی کنید ؟؟

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

  12. #9
    اگه نباشه جاش خالی می مونه MTPROG's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    شهر 3500 ساله
    پست ها
    432

    پيش فرض

    لینک بالا آپدیت شد
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    با این تغیرات جدید ، نسخه بعدیشو آپ نمی کنید ؟؟

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

    Public Delegate Sub TextChang(ByVal sender As Object, ByVal e As String)

    Public Event TextChanging As TextChang

    Protected Overridable Sub RaiseSampleEvent()
    TXT = TxtDate.Text
    RaiseEvent TextChanging(Me, TXT)
    End Sub
    با تشکار از hamishebahar برای راهنمایی خیلی عالی بود
    اگه میشه این کد رو یکم توضیح بدی ممنون

  13. این کاربر از MTPROG بخاطر این مطلب مفید تشکر کرده است

    asd

  14. #10
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    سلام دوستان ببخشید دیر شد سرم شلوغه عجیب و غریب....

    Public Delegate Sub TextChang(ByVal sender As Object, ByVal e As String)
    در این خط ما یک رویداد یا یک Event برای کنترلمون تعریف کردیم.مثل رویداد Click که در بیشتر کنترل ها هست...
    ما میخوایم این رویداد موقعی اجرا بشه که متن داخل تکست تغییر کنه...
    برای همین کد RaiseSampleEvent() رو داخل Changeمتن گذاشتیم.
    به خط زیر دقت کنید:

    Set(ByVal value As String)
    TxtDate.Text = value
    End Set
    وقتی ما متغیر ThisText رو تغییر میدیم متن تکست عوض میشه و دوباره رویداد به وسیله کد RaiseSampleEvent() اجرا میشه.
    Public Event TextChanging As TextChang
    این خط هم که ما یک رویداد تعریف کردین که موقع تغییر متن رویداد TextChanging صدا زده میشه...
    TXT = TxtDate.Text
    متغیر TXT همون متن داخل تکست هست که در این متغیر ذخیره میشه که موقع فراخوانی ازش استفاده میشه....
    RaiseEvent TextChanging(Me, TXT)
    این خط هم موقعی که رویداد صدا زده شد عمل میکنه که Me کنترل هست و TXT هم متن.
    موفق باشید و سربلند.

  15. این کاربر از عــــلی بخاطر این مطلب مفید تشکر کرده است

    asd

صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •