View Full Version : پذیرفتن کارکتر dash
  
Mahdi-v
سه شنبه 27 اسفند 1392, 13:18 عصر
دوستان عزیز سلام 
من پروژه ای قرار بود بنویسم که برای درست اجرا شدن پروژه باید کاری میکردم که کسی نتونه حروف وارد کنه توی تکست باکس بنابراین توی کی پرس تکست باکس ها نوشتم : 
        If (Char.IsDigit(e.KeyChar) Or e.KeyChar = Convert.ToChar(Keys.Back)) Then
            e.Handled = False
        Else
            e.Handled = True
        End If
این کد مانع از وارد شدن حروف در تکست باکس مشه حتی  جلو گیری میکنه از نوشتن dash در تکست باکس که چون تو تکست باکس های من همه ی مقادیر منفی و مثبت میتونن وارد شن بنابراین کاربر برای وارد کردن منفی یک به دش نیاز داره (-1) حالا چی کار کنم تا از نوشتن dash جلو گیری نکنه ؟
Mahdi-v
سه شنبه 27 اسفند 1392, 23:15 عصر
جان من کمک:گریه::ناراحت:
محمد آشتیانی
چهارشنبه 28 اسفند 1392, 00:39 صبح
سلام
تو رویداد KeyPress مربوط به TextBox اینو بنویس (فقط عدد قبول میکنه و خط فاصله)
If IsNumeric(e.KeyChar) Or Asc(e.KeyChar) = 8 Or Asc(e.KeyChar) = 45 Then
            e.Handled = False
        Else
            e.Handled = True
        End If
موفق باشید
Mahdi-v
چهارشنبه 28 اسفند 1392, 20:34 عصر
خیلی گلی :قلب::قلب::قلب: دمت گرم استاد عزیزززززززززز
ببخشید من درگیر پروژه ای ام خیلی سوال می پرسم 
حالا اگه بخوام تعیین کنم که در هر تکست باکسی تنها و تنها یک دش یا خط فاصله مجاز باشه طرف وارد کنه چی کار باید بکنم ؟
محمد آشتیانی
چهارشنبه 28 اسفند 1392, 21:30 عصر
سلام
اینجوری میشه
   If IsNumeric(e.KeyChar) Or Asc(e.KeyChar) = 8 Or Asc(e.KeyChar) = 45 Then
           
            If Asc(e.KeyChar) = 45 And TextBox3.Text.Contains("-") = True Then
                e.Handled = True
                Exit Sub
            End If
            e.Handled = False
        Else
            e.Handled = True
        End If
* TextBox3 اسم همون تکست باکسی هست که میخوای فیلتر کنی (یعنی اگه تو KeyPress تکست باکس 2 این کد رو مینویسی ، طبیعتا اسمش میشه TextBox2)
موفق باشید
Mahdi-v
چهارشنبه 28 اسفند 1392, 22:10 عصر
:تشویق: استاد خیلی استادی دمت گرم تا سوالی دیگر واقعا ممنوننننننننن:قلب::قلب::تشو ق:
Mahdi-v
چهارشنبه 28 اسفند 1392, 22:16 عصر
ببخشید ویرایش شد 
ویرایش شد
Mahdi-v
پنج شنبه 29 اسفند 1392, 12:11 عصر
استاد چه طوری یه کد بنویسم برای کل تکست باکس های پروژه عملی کنه ؟ این کار رو ؟ من بالای 500 تا تکست باکس دارم تو پروژه
محمد آشتیانی
پنج شنبه 29 اسفند 1392, 14:23 عصر
سلام
پراپرتی KeyPreview فرم رو True کن ، بعد تو KeyPress فرم این کد رو بنویس (دیگه برای TextBox ها لازم نیست چیزی بنویسی
  If TypeOf (ActiveControl) Is TextBox Then
            If IsNumeric(e.KeyChar) Or Asc(e.KeyChar) = 8 Or Asc(e.KeyChar) = 45 Then
                If Asc(e.KeyChar) = 45 And ActiveControl.Text.Contains("-") = True Then
                    e.Handled = True
                    Exit Sub
                End If
                e.Handled = False
            Else
                e.Handled = True
            End If
        Else
            e.Handled = False
         End If
موفق باشید
Mahdi-v
پنج شنبه 29 اسفند 1392, 14:32 عصر
دمت گرم استاد درست شد  
:قلب: دوستت داریم
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.