منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
معلومة ::: RichTextBox - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم مقالات VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=184)
+--- الموضوع : معلومة ::: RichTextBox (/showthread.php?tid=5280)



معلومة ::: RichTextBox - RaggiTech - 06-10-12

كاتب الموضوع : BADRMEDIA




أداة RichTextBox الشهيرة كلنا تعاملنا معها ونعرف أنها تمتاز عن أداة TextBox بأنها تمكنا من التعامل مع النصوص المنسقة


لنري كيف نتعامل معها



ضع أداة RichTextBox على الفورم من صندوق الأدوات

ضع زر أمر Button


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

RichTextBox1.LoadFile("C:\BADRMEDIA.txt", RichTextBoxStreamType.PlainText)

End Sub

لو أحببنا أن نفتح ملف نصي بامتداد TXT من مسار محدد

يكون الأمر كما فى الكود السابق

حيث نحدد مسار الملف ونحدد نوع الملف




معلومة ::: RichTextBox - RaggiTech - 06-10-12

يمكن أيضاً أن نحفظ نص فى ملف محدد

الأمر SaveFile



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

RichTextBox1.SaveFile("C:\vb4arab.txt", RichTextBoxStreamType.PlainText)

End Sub

كما نري فى الكود نحدد المسار الذى نحفظ فيه ونحدد نوع الملف



معلومة ::: RichTextBox - RaggiTech - 06-10-12

لابد أن يكون نوع الملف متوافق مع الملف

فمثلا عندما نقوم بتحميل ملف RTF وهو الامتداد الشهير

لابد أن نحدد نوع الملف RichText




كود :
RichTextBox1.LoadFile("C:\vb4arab.rtf", RichTextBoxStreamType.RichText)

وكذلك الحفظ



كود :
RichTextBox1.SaveFile("C:\vb4arab.rtf", RichTextBoxStreamType.RichText)






معلومة ::: RichTextBox - RaggiTech - 06-10-12

[FONT=arial][b][COLOR=Blue]
لو أردنا أن نعرف عدد السطور داخل الأداة

مثال نظهر ذلك فى رسالة


كود :
MessageBox.Show(RichTextBox1.Lines.Length.ToString())
[COLOR=Blue]

انظر للصورة تجد حروف مكتوبة باللون الأحمر دون الباقى


ذلك أمر سهل كل ما فى الأمر

أن تحدد حروف وتكتب فى حدث زر مثلاً أن يقوم بتلوينها باللون الأحمر


كود :
RichTextBox1.SelectionColor = Color.Red
[/COLOR][/b][/FONT][/COLOR]



معلومة ::: RichTextBox - RaggiTech - 06-10-12

كما نري حروف او كلمات تكون بخط مختلف مثلما يحدث فى برامج تنسيق النصوص

كود :
Dim style As FontStyle
style = FontStyle.Bold
RichTextBox1.SelectionFont = New Font("Impact", 16, style)
سنقوم بتعريف متغير من نوع FontStyle باسم style

ونحدد له بعض الخصائص مثل أن الخط Bold

ثم نسند للنص المحدد عن طريق الخاصية SelectionFont خط جديد بالاستايل الجديد


معلومة ::: RichTextBox - RaggiTech - 06-10-12

لنرى كيف نبحث عن نص وعندما نجده نقوم بتظليله

كود :
[/b][/FONT][/COLOR]Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        ' نقوم بتعريق متغير نصي ونسند له قيمة نص نبحث عنه
        Dim SearchStr As String = "ABC"


        ' نقوم بتعريق متغير رقمي وسيحمل قيمة مكان النص الذى نحصل عليه من البحث
        Dim FindPost As Integer


        ' قمنا بعملية البحث عن طريق الأمر Find
        ' اعطينا موضع النتيجة للبحث للمتغير


        FindPost = RichTextBox1.Find(SearchStr)




        If FindPost > -1 Then


            ' قمنا بعمل تحديد للنص من بدايته حتى طوله الحرفي
            RichTextBox1.Select(FindPost, SearchStr.Length)


            RichTextBox1.Focus()




        End If



    End Sub[COLOR=#0000FF][FONT=arial][b]



معلومة ::: RichTextBox - RaggiTech - 06-10-12

لنفرض أنك حددت نص وتريد عند مغادرة الأداة أن يظل النص محدد

كل ما عليك أم تسند للخاصية HideSelection القيمة False




كود :
RichTextBox1.HideSelection = False



=============================================


لنعرف مثلاً من أى نقطة بدأ التحديد للنص مثلاً نظهر ذلك فى رسالة



كود :
MessageBox.Show(RichTextBox1.SelectionStart.ToString())




معلومة ::: RichTextBox - RaggiTech - 06-10-12

كما ترى فى الصورة بمجرد أن كتبت عنوان موقع تعاملت معه الأداة على أساس أنه عنوان URL

كل ما فى الأمر أن تستد للخاصية DetectUrls القيمة True



كود :
RichTextBox1.DetectUrls = True