تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] منع ادخال اكثر من مسافه بين الكلمات في التكست بوكس
#1
Exclamation 
السلام عليكم

اريد ان امنع المستخدم من ادخال اكثر من مسافه بين الكلمات في التكست بوكس

وشكرا لكم

اصدقائي حسب ترتيب ظهورهم في مواضيعي:
baha
ابراهيم ايبو
سعود
Rabeea Qbaha
اسامه الهرماوي
الرد
تم الشكر بواسطة:
#2
السلام عليكم اخي الكريم
تفضل هذا الكود 
كود :
   Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
       If TextBox1.Text = TextBox1.Text.Trim & (Space(2)) Then ' اذا كان النص مع القص زائد فراغين
           TextBox1.Text = TextBox1.Text.Trim & (Space(1)) ' قص النص وضع له فراغ واحد
           TextBox1.Select(TextBox1.TextLength, 0) ' أختر طول النص كله ولمسافة صفر
           TextBox1.Focus()
       End If

   End Sub

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







الرد
تم الشكر بواسطة: asemshahen5 , ابو روضة , baha , سعود , سميـر , viv , viv
#3
جزاك الله خير اخي ابراهيم ايبو

الكود جيد ولكن فيه مشكله لو تم نقل المؤشر بين الكلمات سواء بالماوس او الاسهم فبامكان المستخدم وضع اكثر من مسافه.

اشكر جدا اخي ابراهيم ايبو على الاهتمام والمساعده

اصدقائي حسب ترتيب ظهورهم في مواضيعي:
baha
ابراهيم ايبو
سعود
Rabeea Qbaha
اسامه الهرماوي
الرد
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5
#4
السلام عليكم اخي الكريم سمير
لايحضرني كبف حل مشكلة وضع المؤشر بين كلمتين واضافة اكثر من فراغ ومنع ذلك
ولكن اليك حل اسعافي يستفاد منه .. يمكن عمل مصفوفة من كلمات النص بدلالة الفراغ
 ثم اعادة الكلمات مرة اخرى الى النص مع اضافة فراغ واحد بعد كل كلمة وسأترك مهمة كتابة الكود لك  لتكتسب خبرة
دمت بخير
علمني كيف اصطاد ولاتعطيني سمكة
اعمل الخير واجرك لاتنتظره فالله خير من اليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد
تم الشكر بواسطة: سميـر , ابو روضة , ابو روضة , viv
#5
مجرد مشاركة استاذ كبير ومحترم مثلك يكفيني شرفا

اشكرك جدا اخي ابراهيم ايبو

اصدقائي حسب ترتيب ظهورهم في مواضيعي:
baha
ابراهيم ايبو
سعود
Rabeea Qbaha
اسامه الهرماوي
الرد
#6
كما قال الاخ ابرهيم او استخدم الطريقة التالية

كود :
Dim F As String
       For Each s As String In TextBox1.Text.Split(" ")
           If s <> "" Then
               F &= s & " "
           End If
       Next
       TextBox2.Text = F

ارى ان تترك المستخدم يدخل ما يريد وعند الحفظ تقوم بازالة الفراغات الزائدة جرب ضع اداتين تكست وزر اكتب في الكود
اعتقد سوف يعمل معك جيدا
الرد
#7
لا كبير الا الله الغفور الرحيم 
اشكرك اخي على اطرائك وثنائك فنحن مثلك نتعلم كل يوم
نخطئ كثبرا ونصيب قليلا
اعمل الخير واجرك لاتنتظره فالله خير من اليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد
تم الشكر بواسطة: سميـر , عبد العزيز البسكري , asemshahen5
#8
الكود الصحيح والمناسب لهذا الامر هو الكود التالى
حيث عندما يتواجد المسافى اكثر من مسافة واحدة سيتم تحولها الى مسافة واحدة
اينما تقع المسافة بالجملة

استخدم الكود التالى فى حدث التنفيذ بعد انهاء المستخدم كم الكتابة
PHP كود :
TextSpaceToOne:
 
       TextBox1.Text TextBox1.Text.Replace(Space(2), Space(1))
 
       If (TextBox1.Text.Contains(Space(2))) Then GoTo TextSpaceToOne 
الرد
تم الشكر بواسطة: سميـر , عبد العزيز البسكري , asemshahen5
#9
استفدت من مشاركة استاذي اخي ابراهيم ايبو بكلمات جديدة لم أكن أعرفها من قبل وهي
Sapce
TextLength
Select
واخيرا اسلوبه في ترتيب الكود ووضع الشرح لكل سطر
والتي سيكون لها أثر في اسلوب كتابتي للكود مستقبلا

واستفدت من مشاركة اخي vip فكرة ترك المستخدم يكتب ما يشاء ثم عند الانتهاء يتم حذف المسافات الزائدة بين الكلمات
وقد شاركه بنفس المفهوم الاخ kiki مشكورا

استاذي العزيز ابراهيم ايبو ردك الاخير يدل على تواضعك فجزاك الله خيرا


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

يتم وضع سطر الكود هذا في الحدث losefocus للتكست بوكس
sender.Text=System.Text.RegularExpressions.Regex.Replace(sender.Text,"\s+",space(1)).Trim

واشكركم جزيل الشكر

اصدقائي حسب ترتيب ظهورهم في مواضيعي:
baha
ابراهيم ايبو
سعود
Rabeea Qbaha
اسامه الهرماوي
الرد
تم الشكر بواسطة: asemshahen5 , asemshahen5
#10
الحمد لله والشكر لله
ولهذا المنتدى الرائع
اعمل الخير واجرك لاتنتظره فالله خير من اليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد
تم الشكر بواسطة: asemshahen5 , سميـر


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تعبئة الداتا جريد فيو عن طريق اللست بوكس او التشك بوكس ismaeel 3 109 , 05:42 PM
آخر رد: ismaeel
  سوال عن اضافه كمبو بوكس الى الداتا جريد فيو alazhry 2 156 09-10-21, 06:45 PM
آخر رد: ahmed4
  كود منع ادخال ارقام او حروف داخل التيكست بوكس ابو نور الهدى 2 228 05-10-21, 11:14 AM
آخر رد: ابو نور الهدى
  امر ادخال بيانات الى الكويري اكسس نيمو 0 153 04-10-21, 01:43 PM
آخر رد: نيمو
  تعبئة داتا كرد فيو من الكمبو بوكس نيمو 2 184 03-10-21, 10:10 PM
آخر رد: نيمو
  كود انتقال الماوس تلقائيا من التيكست بوكس ابو نور الهدى 6 342 16-09-21, 12:00 AM
آخر رد: ابو نور الهدى
  معادلة عد كلمة معينة داخل اكثر من تكست بوكس ابو العلاء 10 506 13-09-21, 12:45 AM
آخر رد: ابراهيم ايبو
  منع المستخدم من ادخال ارقام فى مربع النص في فيجوال بيسك دوت نت ابو نور الهدى 2 261 09-09-21, 06:17 PM
آخر رد: ابو نور الهدى
Exclamation [سؤال] احتاج مساعدة في حفظ ليست بوكس الى تكست malek369 0 249 24-08-21, 09:12 AM
آخر رد: malek369
Rainbow [سؤال] توسعه او تصغير مسافه اعمده الحقول في الاكسيس محمد مسافر 1 286 16-08-21, 08:55 PM
آخر رد: asemshahen5

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم