السلام عليكم ورحمة الله وبركاته
بعد البحث والتنقيب عن هذا الموضوع استطعت الوصول إلى طريقة إخفاء وإظهار التشكيل برمجياً كما في برنامج المكتبة الشاملة.
الفكرة هي أن تضع في الفورم RichTextbox مخفي، تضيف إليه النص المشكول، ثم تجعله ReadOnly حتى لا تتغير قيمته عند تغيير النص المشكول.
RichTextBox1.Clear() RichTextBox1.Text = RichTextBox2.Text RichTextBox1.ReadOnly = True
أعلاه، RichTextbox1 مخفي.
RichTextbox2 يحوي النص المشكول.
الآن أدرج الكود الآتي لاستبدال جميع التشكيلات بسلسلة نصية فارغة vbnullstring
RichTextbox2.Text = RichTextbox2.Text.Replace("َ", vbNullString)
RichTextbox2.Text = RichTextbox2.Text.Replace("ً", vbNullString)
RichTextbox2.Text = RichTextbox2.Text.Replace("ُ", vbNullString)
RichTextbox2.Text = RichTextbox2.Text.Replace("ٌ", vbNullString)
RichTextbox2.Text = RichTextbox2.Text.Replace("ِ", vbNullString)
RichTextbox2.Text = RichTextBox2.Text.Replace("ٍ", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ْ", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ّ", vbNullString)هنا سيتم إخفاء جميع التشكيلات.
لإظهار التشكيلات من جديد قم بما يلي:
RichTextBox1.ReadOnly = False RichTextBox2.Text = RichTextBox1.Text
وهذا الكود يمكن وضعه مباشرة في Checkbox كالتالي:
Select Case CheckBox1.Checked
Case True
RichTextBox1.Clear()
RichTextBox1.Text = RichTextBox2.Text
RichTextBox1.ReadOnly = True
RichTextBox2.Text = RichTextBox2.Text.Replace("َ", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ً", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ُ", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ٌ", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ِ", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ٍ", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ْ", vbNullString)
RichTextBox2.Text = RichTextBox2.Text.Replace("ّ", vbNullString)
Case False
RichTextBox1.ReadOnly = False
RichTextBox2.Text = RichTextBox1.Text
End Select
