تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
درس: كيفية حساب عدد الأسطر في نص
#1
<< بسم الله الرحمن الرحيم >>


أبدأ أول درس من دروسي حصرياً لمنتدى فيجوال بسيسك لكل العرب فقط داعيا له و للإدارة و لي التوفيق Smile
أما بعد , كل مبرمجي الفيجوال بيسيك دوت نت يعلمون أنه لا توجد دالة برمجية مباشرة لحساب عدد الأسطر و لتلافي هذا النقص أقدم لكم شرحا مبسطاً لكود يحسب هذا المقدار
مبدئياً ليكن ما نحتاجه فورم واحد Form1 و أداة زر Button1 و أداة نص Textbox1

فكرة الكود :

الكود بسيط جدا يعتمد على دراسة كل حرف من النص حرفا حرفا و من المعلوم أن البدء بسطر جديد هو حرف بحد ذاته يقابله الضغط على الزر Enter من لوحة المفاتيح .

و الدليل على ذلك ابدأ سطر جديد بدون اي نص ستجد أنه سطر على الرغم من عدم وجود قيم نصية فيه إذا الانتقال لسطر جديد هو حرف -إن صح التعبير-

قيمة الأسكي لهذا الزر هي 13 كما هو معرف دولياْ فببساطة بدراسة كل حرف نقوم مقارنة قيمته مع هذه القيمة فإذا ساوتها فنحن بصدد سطر جديد من صندوق النص
سنعرف في كود الحساب إذاً متغير يحفظ بها عدد الأسطر نعدل عليه كلما وجدنا سطرا جديدا Smile

الكود مع شرحه :


   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

       ' تعريف متغيرات لازمة للعملية
       Dim Lines As Integer = 0
       Dim I As Integer = 0
       Dim S As String = ""

       'حلقة تكرارية تبدأ من أول حرف في صندوق النص و حتى آخر حرف
       For I = 0 To TextBox1.Text.Length - 1

           'تعيين قيمة للمتغير الذي عرفناه أعلاه تساوي حرف واحد مقتطع من النص
           S = TextBox1.Text.Substring(I, 1)

           'إزا كانت النص المقتطع مساويا لقيمة الضغط على
           'Enter من لوحة المفاتيح
           'نعلم مسبقا أن قيمة الزر تساوي 13
           If S = Chr(13) Then

               'تزداد قيمة متغير عدد الأسطر بمقدار واحد
               Lines += 1

           End If
       Next

       'رسالة نصية بعدد الأسطر طبعا أضفنا القيمة 1 لأنه السطر الأول قيمته 0
       'و لتجاوز هذه المشكلة يصبح السطر الأول قيمته واحد و هكذا
       MsgBox(Lines + 1)
   End Sub

لا تنسوا المثال في المرفقات Smile
العملية إذا بسيطة جداً أتمنى أن يكون الموضوع سلس و الشرح مفهوم Smile
تم بقلم المبرمج الطموح vb6
تحياتي للجميع ^___^


الملفات المرفقة
.zip   Lines Count.zip (الحجم : 221.3 ك ب / التحميلات : 176)

حصريا للمنتدى :
درس: كيفية حساب عدد الأسطر في نص

-- إذا لم تزد على الحياة شيئاً فأنت زائد عليها --
-- المبرمج الطموح vb6 --


الرد }}}
تم الشكر بواسطة: العواد الصغير , مبرمج بلا حدود
#2
ايجاد عدد السطور
TextBox1.Lines.Length
textbox لا يقبل انتر اذا جعلتة ملتي لاين جرب انتر لن تعمل الحل استخدام
richTextBox
ايجاد عدد السطور
richTextBox1.Lines.Length
ايضا يمكنك التعديل على سطر معين
درس رائع بارك الله فيك
صل من قطعك , واعط من منعك , وإعف عن من ظلمك Big Grin
الرد }}}
#3
[b]شكرا على مجهودك اخي الكريم[/b]
الرد }}}
تم الشكر بواسطة:
#4
أخي Mostafa Dahab كلامك صحيح بالتكست بوكس الافتراضي لا يقبل تعدد الأسطر و لكن انا أتكلم عن تكست بوكس عُدلت فيه خاصية MultiLine لتصبح فعالة بالإضافة لأشرطة التمرير Scrolls .... شكرا على التنبيه Smile
أخي mostafa zaki شكرا على مرورك الطيب Smile

حصريا للمنتدى :
درس: كيفية حساب عدد الأسطر في نص

-- إذا لم تزد على الحياة شيئاً فأنت زائد عليها --
-- المبرمج الطموح vb6 --


الرد }}}
تم الشكر بواسطة: مبرمج بلا حدود
#5
شكرا لك وجعلها في ميزان حسناتك
                                                        Heart سبحان الله والحمد لله ولا اله الا الله والله اكبر  Heart
الرد }}}
تم الشكر بواسطة:
#6
بارك الله فيك ...
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  حساب مكان الفورم علي شاشة الكمبيوتر silverlight 2 3,158 18-06-23, 03:26 PM
آخر رد: kebboud
  [سلسلة تعليمية] شرح تفصيلي وكامل عن كيفية الاتصال بسيكوال وعمل اتاش برمجي وجلب اسماء السيرفرات ابو انس 3 3,620 25-02-22, 12:44 AM
آخر رد: atefkhalf2004
Photo كيفية اطهار جدول داخل الأخر alsouf 3 4,470 21-11-20, 09:15 AM
آخر رد: Anas Mahmoud
  لفهم كيفية الربط الذي يتم بين الجداول viv 4 4,991 03-10-20, 05:34 PM
آخر رد: Arfat007
  [VB.NET] كيفية استخدام اداوات ديف اكسبريس devexpressلادخال السجلات الى قاعدة بيانات نوع اكسس 13adam123 0 2,579 29-03-20, 12:50 PM
آخر رد: 13adam123
Star [مقال] كيفية تحويل اسعار العملات بإستخدام Yahoo Exchange Rates Web Service Programmation 9 8,956 22-02-20, 12:58 PM
آخر رد: دمعة المقهور
  شرح طريقة حساب الكمية والبيع بأكثر من وحدة ملهمـ 7 5,686 30-08-19, 03:38 AM
آخر رد: atefkhalf2004
Exclamation كيفية تجاوز ظهور الخطا في Global.WindowsApplication1.My.Resources الرائد 0 2,549 13-08-19, 11:40 PM
آخر رد: الرائد
  [درس فيديو] كيفية استخدام الجملة الشرطية if alims 1 3,333 22-07-19, 06:38 AM
آخر رد: سعود
  كيفية عمل برنامج للأذان + قاعدة بيانات لـ 252 دولة و 9512 مدينة ! : مبرمج أوتار 4 23,517 21-01-19, 03:43 PM
آخر رد: elgokr

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


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