منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط (/showthread.php?tid=39929)



كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط - Ikramynasr - 08-11-21

كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط


RE: كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط - Anas Mahmoud - 08-11-21

اجبت عن هذا السؤال منذ دقائق على موضوع اخر

استخدم حدث TextChanged و Regex.Replace لاستبدال اي شيء ليس بحرف عربي او انجليزي او مسافة بنص فارغ

كود :
    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
        Dim Txt As TextBox = sender
        Txt.Text = Regex.Replace(Txt.Text, "[^\u0621-\u064Aa-zA-Z\s]", "")
    End Sub


لا تنس 
كود :
Imports System.Text.RegularExpressions

المدي [^\u0621-\u064Aa-zA-Z\s] يمثل اي شيء لبس بحرف عربي ( في الامر تفصيل ) وكذلك ليس بحرف انجليزي ولا حرف مسافة ( مسافة عادية او TAB او سطر جديد )


RE: كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط - Ikramynasr - 08-11-21

(08-11-21, 03:47 PM)Anas Mahmoud كتب : اجبت عن هذا السؤال منذ دقائق على موضوع اخر

استخدم حدث TextChanged و Regex.Replace لاستبدال اي شيء ليس بحرف عربي او انجليزي او مسافة بنص فارغ

كود :
    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
        Dim Txt As TextBox = sender
        Txt.Text = Regex.Replace(Txt.Text, "[^\u0621-\u064Aa-zA-Z\s]", "")
    End Sub


لا تنس 
كود :
Imports System.Text.RegularExpressions

المدي [^\u0621-\u064Aa-zA-Z\s] يمثل اي شيء لبس بحرف عربي ( في الامر تفصيل ) وكذلك ليس بحرف انجليزي ولا حرف مسافة ( مسافة عادية او TAB او سطر جديد )

تسلم اخي ولكن اذا جاء شخص لمسح حرف لا يستطيع اريد اضافتها واريد عند كتابة رقم يظهر له رساله بكتابة حروف فقط


RE: كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط - Anas Mahmoud - 08-11-21

أضف حدث KeyPress

كود :
   Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
       e.Handled = Regex.IsMatch(e.KeyChar, "[^\u0621-\u064Aa-zA-Z\s\u0000-\u001f]")
   End Sub

هل تريد ان تمنع المستخدم من مسح ماكتبه ؟


RE: كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط - Ikramynasr - 08-11-21

(08-11-21, 04:14 PM)Anas Mahmoud كتب : أضف حدث KeyPress

كود :
   Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
       e.Handled = Regex.IsMatch(e.KeyChar, "[^\u0621-\u064Aa-zA-Z\s\u0000-\u001f]")
   End Sub

هل تريد ان تمنع المستخدم من مسح ماكتبه ؟

اريد اذا كتب حرف خطاء ويريد يمسحه Backspace


RE: كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط - Anas Mahmoud - 08-11-21

طيب عدل الحدث الى مايلي

كود :
   Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
       If Regex.IsMatch(e.KeyChar, "[^\u0621-\u064Aa-zA-Z\s\u0000-\u001f]") Then
           e.Handled = True
           MsgBox("الاحرف فقط مسموحة")
       End If

   End Sub



RE: كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط - Ikramynasr - 08-11-21

تسلم حبيبي اشتغل معي الف شكرا