تقييم الموضوع :
  • 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 ك ب / التحميلات : 53)

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

-- إذا لم تزد على الحياة شيئاً فأنت زائد عليها --
-- المبرمج الطموح 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
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Star [مقال] كيفية تحويل اسعار العملات بإستخدام Yahoo Exchange Rates Web Service Programmation 8 2,472 26-08-16, 10:21 AM
آخر رد: tryold
  كيفية تغيير خلفية محرر الكود في Visual Studio 2010 إلى صورة أبو عمر 0 566 06-09-15, 06:44 PM
آخر رد: أبو عمر
  [VB.NET] كيفية انشاء قاعدة بيانات برمجيا VB.net (صوت وصورة) أحمد النجار 0 724 18-01-15, 06:59 AM
آخر رد: أحمد النجار
  كيفية عمل setup للبرنامج المعمول بالفيجول بيسك2008 يدعم العربيه hosney 3 855 31-12-14, 10:55 AM
آخر رد: hosney
  [مقال] كيفية عمل قالب لفورم learning.net 12 3,566 01-01-14, 10:33 PM
آخر رد: adosql
  كيفية عمل برنامج للأذان + قاعدة بيانات لـ 252 دولة و 9512 مدينة ! : مبرمج أوتار 1 3,650 15-07-13, 04:36 PM
آخر رد: مبرمج بلا حدود
  شرح مصور: كيفية رفع برامجك على موقع Appharbor sooriaty03 7 1,654 03-07-13, 01:36 PM
آخر رد: مبرمج بلا حدود
  حساب قيمة معادلة(اقصد صيغة دون مجاهيل) مكتوبة بالتكست : الجزء الخامس والاخير محمد شريقي 3 906 28-05-13, 01:06 PM
آخر رد: Sajad
  كيفية عمل mdi حيث يظهر مرة واحدة egypure 2 815 18-12-12, 04:07 AM
آخر رد: egypure
  من المنتدى القديم - كيفية عمل Setup لبرامجك لتعمل على جميع الأجهزة RaggiTech 0 1,089 14-10-12, 02:38 PM
آخر رد: RaggiTech

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


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