View Full Version : چگونگی پرش از داده های نا معتبر در textbox
ali_habibi1384
دوشنبه 30 مهر 1386, 14:43 عصر
سلام دوستان؛من یک textbox دارم که می خوام بعضی چیزها توش وارد نشه مثلا وقتی می خوام نام توش وارد کنم دیگه کلیدهای عدد توش کار نکنه ویا وقتی میخوام یک سن رو توش وارد کنم دیگه حروف توش وارد نشه . من باید چه کار کنم؟:متفکر:
اوبالیت به بو
دوشنبه 30 مهر 1386, 16:13 عصر
باید تویه TextBox که قرار نام رو وارد کنی تویه رویداد Change وارد کنی:
If IsNumeric(TextName.Text)=True Then
MsgBox "شما باید از کاراکتر های حروف استفاده کنید.
TextName.Text=""
End If"
همچنین اگه می خوای که تویه TextBox که قرار سن (عدد) وارد بشه برای جلوگیری از ورود حرف باید بنویسی :
If IsNumeric(TextAge.Text)=False then
MsgBox "شما مجاز به استفاده از کاراکتر حروف نمی باشید.
TextAge.Text=""
End If"
اوبالیت به بو
دوشنبه 30 مهر 1386, 16:38 عصر
اینم برنامه اگه به دردت می خوره.:تشویق:
ali_habibi1384
دوشنبه 30 مهر 1386, 16:51 عصر
سلام من خودم اینای رو که گفتی میدونستم ولی من نمی خوام textbox خالی بشه میخوام وقتی مثلا داریم عدد وارد می کنیم اگه حروف زده بشه حروف رو ننویسه و بوغ بزنه نه اینکه پیغام خطا بده و textbox خالی بشه چون اینجوری یکسری دادههای معتبری رو که کاربر به ما داده از دست خواهد رفت . من به دنبال یه راه حل بهتر می گردم . به هر حال ممنون
اوبالیت به بو
دوشنبه 30 مهر 1386, 17:28 عصر
فکر می کنم که بشه از متد Left یا Right استفاده کرد و به اندازه کاراکتر های خطا یا اشتباه به عقب برگشت.
aslan_ir
دوشنبه 30 مهر 1386, 21:02 عصر
سلام
مثال برای گرفتن فقط عدد
Private Sub Text1_Keypress(Index As Integer, KeyAscii As Integer)
Dim strvalid As String
strvalid = "-+1234567890."
If KeyAscii = 13 Then
SendKeys "{TAB}"
End If
If KeyAscii > 26 Then
If InStr(strvalid, Chr(KeyAscii)) = 0 Then
KeyAscii = 0
End If
End If
End Sub
اوبالیت به بو
دوشنبه 30 مهر 1386, 21:06 عصر
دوست من لطفا کدت رو تو کدشکن بزار.دستت به خاطر کد درد نکنه
Hossein Bazyan
دوشنبه 30 مهر 1386, 21:14 عصر
سلام دوستان؛من یک textbox دارم که می خوام بعضی چیزها توش وارد نشه مثلا وقتی می خوام نام توش وارد کنم دیگه کلیدهای عدد توش کار نکنه ویا وقتی میخوام یک سن رو توش وارد کنم دیگه حروف توش وارد نشه . من باید چه کار کنم؟:متفکر:
سلام
باور کن چندین بار خودم برنامه را آپلود کرده ام.
بگرد اگه پیداش نکردی برات بذارم
ebrahimhoze
دوشنبه 30 مهر 1386, 21:42 عصر
Public Function KeyControl(CodeControl As Integer, _
Stat As String) As Integer
If Stat = "T" Then 'only Text
Select Case CodeControl
Case 65 To 90 ' Key from A to Z
KeyControl = CodeControl
Case 97 To 122 'Key from a to z
KeyControl = CodeControl
Case Else
KeyControl = 0
Beep
End Select
Else
Select Case CodeControl
Case 48 To 57 ' Key from 0 to 9
KeyControl = CodeControl
Case 47 And Stt = True ' /
KeyControl = CodeControl
Case 8 ' Key BackSpace
KeyControl = CodeControl
Case 46 ' Period
KeyControl = CodeControl
Case 13 ' enter
KeyControl = CodeControl
Case Else
KeyControl = 0
Beep
End Select
End If
End Function
'
Private Sub Text1_KeyPress(KeyAscii As Integer)
KeyAscii = KeyControl(KeyAscii, "T")
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
KeyAscii = KeyControl(KeyAscii, "N")
End Sub
Hossein Bazyan
دوشنبه 30 مهر 1386, 22:02 عصر
Public Function KeyControl(CodeControl As Integer, _
Stat As String) As Integer
If Stat = "T" Then 'only Text
Select Case CodeControl
Case 65 To 90 ' Key from A to Z
KeyControl = CodeControl
Case 97 To 122 'Key from a to z
KeyControl = CodeControl
Case Else
KeyControl = 0
Beep
End Select
Else
Select Case CodeControl
Case 48 To 57 ' Key from 0 to 9
KeyControl = CodeControl
Case 47 And Stt = True ' /
KeyControl = CodeControl
Case 8 ' Key BackSpace
KeyControl = CodeControl
Case 46 ' Period
KeyControl = CodeControl
Case 13 ' enter
KeyControl = CodeControl
Case Else
KeyControl = 0
Beep
End Select
End If
End Function
'
Private Sub Text1_KeyPress(KeyAscii As Integer)
KeyAscii = KeyControl(KeyAscii, "T")
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
KeyAscii = KeyControl(KeyAscii, "N")
End Sub
سلام
دوست عزیز حداقل حق تالیف را محفوظ میداتشی و میگفتی این کد را من نوشته ام
__siavash__
دوشنبه 30 مهر 1386, 23:05 عصر
البته مثال تو این زمینه زیاد هست
من هم دو سه نمونه مختلف آپ کرده بودم
مثلا دو نومونش فکر کنم تو این تاپیک باشه
تعیین نوع ورودی جعبه متن (http://barnamenevis.org/forum/showthread.php?t=70621&highlight=%D8%AA%DA%A9%D8%B3%D8%AA+%D8%A8%D8%A7%DA %A9%D8%B3)
که نمیدونم چرا این صفحه باز نمیشه شما هم یه تست بکن !
میره تو این سایت !
http://www.douran.com/HomePage.aspx?TabID=0&Site=DouranPortal&Lang=fa-IR
:متفکر:
ebrahimhoze
سه شنبه 01 آبان 1386, 06:45 صبح
سلام
دوست عزیز حداقل حق تالیف را محفوظ میداتشی و میگفتی این کد را من نوشته ام
هدف یاد دادن بود که انجام شد از شما هم ممنون
totfarangi
سه شنبه 01 آبان 1386, 12:50 عصر
میتونی یه شرط خیلی ساده توی keypress بذاری مثلا
If (e.KeyChar >= "a"And e.KeyChar <= "z"Or e.KeyChar >= "A"And e.KeyChar <= "Z") Then
e.Handled = True
EndIf
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.