منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] ماهو كود كتابة الحقل حروف عربية فقط - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم أسئلة واستفسارات الأعضاء - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=94)
+--- قسم : قسم Visual Basic 6 وما قبله (http://vb4arb.com/vb/forumdisplay.php?fid=167)
+--- الموضوع : [سؤال] ماهو كود كتابة الحقل حروف عربية فقط (/showthread.php?tid=15226)



ماهو كود كتابة الحقل حروف عربية فقط - alfakeeh - 25-03-16

سؤال  ماهو كود كتابة في الحقل حروف عربية فقط   وكذلك كود كتابة في الحقل حروف انجليزية وراقام فقط مثال حقل رقم جواز السفر يكون حروف انجليزية وارقام 

مع أطيب تحياتي


RE: ماهو كود كتابة الحقل حروف عربية فقط - ناجي إبراهيم - 27-03-16

السلام عليكم و رحمة الله و بركاته...

ضع الدالة التالية في قسم التصريحات العام (General Declarations) للنموذج (إذا أردت استعمالها على مستوى المشروع - أي في أكثر من نافذة - فضعها في Module و غير كلمة Private إلى Public):

PHP كود :
Private Function IsArabicLetter(ByVal KeyAscii As Integer_
                                Optional ByVal IncludeSpace 
As Boolean True_
                                Optional ByVal IncludeDigits 
As Boolean False_
                                Optional ByVal ExceptChars 
As String "") As Boolean
    Const ARABIC_LETTERES 
As String "اىءأإآئؤبتثجحخدذرزسشصضطظعغفقكلمنهوية"
 
   Dim SearchStr As String
    
    Select 
Case KeyAscii
        Case Is 
32
            IsArabicLetter 
True
        Case 32
            IsArabicLetter 
IncludeSpace
        Case 48 To 57
            IsArabicLetter 
IncludeDigits
        Case 
Else
 
           SearchStr ARABIC_LETTERES Trim$(ExceptChars)
 
           IsArabicLetter = (InStr(SearchStrChr$(KeyAscii)) <> 0)
 
   End Select
End 
Function 

ثم في الحدث KeyPress لمربع النص اكتب السطر التالي:

PHP كود :
Private Sub Text1_KeyPress(KeyAscii As Integer)
 
   If Not IsArabicLetter(KeyAsciiThen KeyAscii 0
End Sub 


* لاحظ أن للدالة IsArabicLetter ثلاثة بارامترات اختيارية بعد البارامتر الأول (KeyAscii) و هي:
= البارامتر IncludeSpace: يحدد هل يتم قبول الفراغ (space) أم لا. قيمته الافتراضية هي True أي أن الفراغ مقبول.
= البارامتر IncludeDigits: يحدد هل يتم قبول الأرقام (0 - 9) أم لا. قيمته الافتراضية هي False أي أن الأرقام غير مقبولة.
= البارامتر ExceptChars: يحدد مجموعة من الرموز أو الحروف التي تريد استثناءها، أي قبولها (من غير الحروف العربية و الفراغ و الأرقام). قيمته الافتراضية نص فارغ (empty string) أي لا توجد حروف أو رموز مستثناة.

* إذا أردنا مثلاً منع الفراغات و قبول الأرقام بالإضافة إلى الشرطة الأفقية (علامة الناقص) و الهاش:

PHP كود :
Private Sub Text1_KeyPress(KeyAscii As Integer)
 
   If Not IsArabicLetter(KeyAsciiFalseTrue"-#"Then KeyAscii 0
End Sub 

نرجو الاستفادة و السلام.


RE: ماهو كود كتابة الحقل حروف عربية فقط - ahmedabdelaliem - 27-03-16

الله يبارك فيك اخي ناجي ابراهيم وشكرا على هذه المعلومة الرائعة

بالتوفيق


RE: ماهو كود كتابة الحقل حروف عربية فقط - alfakeeh - 27-03-16

شكر لك
ممكن الكود في vb6


RE: ماهو كود كتابة الحقل حروف عربية فقط - ناجي إبراهيم - 27-03-16

السلام عليكم...

الكود أصلاً للـ VB6.

سلام.


RE: ماهو كود كتابة الحقل حروف عربية فقط - ahmed.m - 31-03-16

الله يبارك فيك