21-08-19, 07:26 PM
21-08-19, 09:27 PM
السلام عليكم اخي الكريم
تفضل هذا الكود
كود :
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
21-08-19, 10:56 PM
جزاك الله خير اخي ابراهيم ايبو
الكود جيد ولكن فيه مشكله لو تم نقل المؤشر بين الكلمات سواء بالماوس او الاسهم فبامكان المستخدم وضع اكثر من مسافه.
اشكر جدا اخي ابراهيم ايبو على الاهتمام والمساعده
الكود جيد ولكن فيه مشكله لو تم نقل المؤشر بين الكلمات سواء بالماوس او الاسهم فبامكان المستخدم وضع اكثر من مسافه.
اشكر جدا اخي ابراهيم ايبو على الاهتمام والمساعده
21-08-19, 11:15 PM
السلام عليكم اخي الكريم سمير
لايحضرني كبف حل مشكلة وضع المؤشر بين كلمتين واضافة اكثر من فراغ ومنع ذلك
ولكن اليك حل اسعافي يستفاد منه .. يمكن عمل مصفوفة من كلمات النص بدلالة الفراغ
ثم اعادة الكلمات مرة اخرى الى النص مع اضافة فراغ واحد بعد كل كلمة وسأترك مهمة كتابة الكود لك لتكتسب خبرة
دمت بخير
علمني كيف اصطاد ولاتعطيني سمكة
21-08-19, 11:21 PM
مجرد مشاركة استاذ كبير ومحترم مثلك يكفيني شرفا
اشكرك جدا اخي ابراهيم ايبو
اشكرك جدا اخي ابراهيم ايبو
21-08-19, 11:37 PM
كما قال الاخ ابرهيم او استخدم الطريقة التالية
ارى ان تترك المستخدم يدخل ما يريد وعند الحفظ تقوم بازالة الفراغات الزائدة جرب ضع اداتين تكست وزر اكتب في الكود
اعتقد سوف يعمل معك جيدا
كود :
Dim F As String
For Each s As String In TextBox1.Text.Split(" ")
If s <> "" Then
F &= s & " "
End If
Next
TextBox2.Text = F
ارى ان تترك المستخدم يدخل ما يريد وعند الحفظ تقوم بازالة الفراغات الزائدة جرب ضع اداتين تكست وزر اكتب في الكود
اعتقد سوف يعمل معك جيدا
21-08-19, 11:39 PM
لا كبير الا الله الغفور الرحيم
اشكرك اخي على اطرائك وثنائك فنحن مثلك نتعلم كل يوم
نخطئ كثبرا ونصيب قليلا
22-08-19, 12:31 AM
الكود الصحيح والمناسب لهذا الامر هو الكود التالى
حيث عندما يتواجد المسافى اكثر من مسافة واحدة سيتم تحولها الى مسافة واحدة
اينما تقع المسافة بالجملة
استخدم الكود التالى فى حدث التنفيذ بعد انهاء المستخدم كم الكتابة
حيث عندما يتواجد المسافى اكثر من مسافة واحدة سيتم تحولها الى مسافة واحدة
اينما تقع المسافة بالجملة
استخدم الكود التالى فى حدث التنفيذ بعد انهاء المستخدم كم الكتابة
PHP كود :
TextSpaceToOne:
TextBox1.Text = TextBox1.Text.Replace(Space(2), Space(1))
If (TextBox1.Text.Contains(Space(2))) Then GoTo TextSpaceToOne
22-08-19, 01:35 AM
استفدت من مشاركة استاذي اخي ابراهيم ايبو بكلمات جديدة لم أكن أعرفها من قبل وهي
Sapce
TextLength
Select
واخيرا اسلوبه في ترتيب الكود ووضع الشرح لكل سطر
والتي سيكون لها أثر في اسلوب كتابتي للكود مستقبلا
واستفدت من مشاركة اخي vip فكرة ترك المستخدم يكتب ما يشاء ثم عند الانتهاء يتم حذف المسافات الزائدة بين الكلمات
وقد شاركه بنفس المفهوم الاخ kiki مشكورا
استاذي العزيز ابراهيم ايبو ردك الاخير يدل على تواضعك فجزاك الله خيرا
ارسلت لزميلي كل مشاركات الأخوة الأعضاء في هذا الموضوع
فأرسل لي سطر كود تطبيقا لفكرة حذف المسافات بعد انتهاء المستخدم من الكتابه
وسمح لي بمشاركته هنا للفائدة
يتم وضع سطر الكود هذا في الحدث losefocus للتكست بوكس
sender.Text=System.Text.RegularExpressions.Regex.Replace(sender.Text,"\s+",space(1)).Trim
واشكركم جزيل الشكر
Sapce
TextLength
Select
واخيرا اسلوبه في ترتيب الكود ووضع الشرح لكل سطر
والتي سيكون لها أثر في اسلوب كتابتي للكود مستقبلا
واستفدت من مشاركة اخي vip فكرة ترك المستخدم يكتب ما يشاء ثم عند الانتهاء يتم حذف المسافات الزائدة بين الكلمات
وقد شاركه بنفس المفهوم الاخ kiki مشكورا
استاذي العزيز ابراهيم ايبو ردك الاخير يدل على تواضعك فجزاك الله خيرا
ارسلت لزميلي كل مشاركات الأخوة الأعضاء في هذا الموضوع
فأرسل لي سطر كود تطبيقا لفكرة حذف المسافات بعد انتهاء المستخدم من الكتابه
وسمح لي بمشاركته هنا للفائدة
يتم وضع سطر الكود هذا في الحدث losefocus للتكست بوكس
sender.Text=System.Text.RegularExpressions.Regex.Replace(sender.Text,"\s+",space(1)).Trim
واشكركم جزيل الشكر
22-08-19, 01:57 AM
الحمد لله والشكر لله
ولهذا المنتدى الرائع