تکست باکس سفارشی

Collapse
X
 
  • زمان
  • نمایش
Clear All
new posts
  • Haji hadi

    • 2013/09/21
    • 27

    تکست باکس سفارشی

    با سلام
    آیا می شود
    1-با زدن دکمه * در textBox به جای تایپ * سه تا صفر 000 تایپ کنه؟
    2-فقط بتوان عدد تایپ کرد و از پذیرفتن حرف جلوگیری کند؟
    3-فقط بتوان حرف تایپ کرد و از پذیرفتن عدد جلوگیری کند؟
    4-بیش از 8 کارکتر نپذیرد؟
    5-کمتر از 5 کارکتر نپذیرد؟
    6-وقتی عدد وارد می کنیم بعد از 4تا کارکتر اول و دو کارکتر بعدش به صورت خودکار علامت / بگذارد (برای درج تاریخ 18/07/1393 )
  • s.cheraghi

    • 2011/02/27
    • 311

    #2
    1- در رویداد keyup مربوط به textbox با استفاده از یک شرط مقدار keycode را بررسی کن، در صورتی که با مقدار vbKeyMultiply برابر بود به انتهای متن، صفرها رو قرار بده
    3-این دستورات باید در رویداد KeyUp مربوط به textbox قرار داده بشه
    کد:
    If KeyCode >= vbKeyA And KeyCode <= vbKeyZ Then
        TextBox1.SelStart = Len(TextBox1.Text) - 1
        TextBox1.SelLength = 1
        TextBox1.SelText = ""
    End If
    2- برای جلوگیری از تایپ عدد باید از دستورات بالا با جایگزینی مقادیر ثابت به جای vbkeya و vbkeyz با مقادیر مرتبط با اعداد استفاده کنی.
    4- خاصیت maxlenght رو برابر 8 قرار بده
    5- در رویداد exit مربوط به textbox با استفاده از یک شرط و با استفاده از تابع len، تعداد کارکترهای قرار داده شده در خاصیت text مربوط به textbox رو بشمار و در صورت کمتر بودن از 4 پیغام بدی و دوباره textbox رو انتخاب کنه.
    6- از دستور زیر استفاده کن:
    کد:
    TextBox1.Text = Format(TextBox1.Value, "0000/00/00")
    در یادگیری سیر نشوید

    برای ارتباط بیشتر به سایت ExcelPedia سربزنید.
    برگزاری دوره های آموزش اکسل در تهران
    آموزش توابع اکسل

    کامنت

    • tosco3652

      • 2013/04/08
      • 22

      #3
      با سلام
      دوست عزیز شما با استفاده از کد زیر هم میتوانی مشکلت را حل نمایی.

      کد:
      [B]If Len(ActiveControl.Value) = 8 Then ActiveControl.Value = Format(ActiveControl.Value[/B][B], "####/##/##")[/B]

      کامنت

      Working...