تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تغير لون الكلمة
#1
أريد كود يغير لون الكلمة الي يكتبها مستخدم البرنامج في التكست بوست الى احمر
مثلاً اذا كتب
vb6 تصير الكلمة حمره
واريد الكود مجموعة من الكلمات
الرد }}}
تم الشكر بواسطة:
#2
ممكن تردو ياجماعة
الرد }}}
تم الشكر بواسطة:
#3
السلام عليكم

- إستخدم أداة RichTextBox حيث أنك لاتستطيع تلوين كلمة واحدة من النص في أداة النص العادية TextBox , إستخدم هذا الكود :


كود :
Private Sub Command1_Click()
        SetColorWords RichTextBox1, "vb6", vbRed
      End Sub

      Private Function SetColorWords(rtb As RichTextBox, _
                                  sFindString As String, _
                                  lColor As Long) _
                                  As Integer

        Dim lFoundPos As Long
                                      Dim lFindLength As Long
        Dim lOriginalSelStart As Long
        Dim lOriginalSelLength As Long
        Dim iMatchCount As Integer

      lOriginalSelStart = rtb.SelStart
        lOriginalSelLength = rtb.SelLength

        lFindLength = Len(sFindString)

         lFoundPos = rtb.Find(sFindString, 0, , rtfNoHighlight)

        While lFoundPos > 0

          iMatchCount = iMatchCount + 1

rtb.SelStart = lFoundPos
         rtb.SelLength = lFindLength
          rtb.SelColor = lColor

          lFoundPos = rtb.Find(sFindString, _
            lFoundPos + lFindLength, , rtfNoHighlight)
       Wend
      
        rtb.SelStart = lOriginalSelStart
        rtb.SelLength = lOriginalSelLength

        SetColorWords = iMatchCount  

End Function

- تحياتي .
الرد }}}
تم الشكر بواسطة:
#4
اخي هذا لكلمة واحدة
الرد }}}
تم الشكر بواسطة:
#5
هل تريد أنه إذا كتب المستخدم كلمة واحدة فقط في التكست بوكس وليس مجموعة كلمات من بينها كلمة vb6 .
الرد }}}
تم الشكر بواسطة:
#6
اخي اريد كود لمجموعة كلمات ممكن؟
الرد }}}
تم الشكر بواسطة:
#7
أخي لازم تستخدم أداة ال RichTextBox ، ثم أنسخ هذا الكود وإلصقه في داخل كود الفورم :

كود :
Private Sub RichTextBox1_Change()
        SetColorWords RichTextBox1, "vb6", vbRed
      End Sub

      Private Function SetColorWords(rtb As RichTextBox, _
                                  sFindString As String, _
                                  lColor As Long) _
                                  As Integer

        Dim lFoundPos As Long
                                      Dim lFindLength As Long
        Dim lOriginalSelStart As Long
        Dim lOriginalSelLength As Long
        Dim iMatchCount As Integer

      lOriginalSelStart = rtb.SelStart
        lOriginalSelLength = rtb.SelLength

        lFindLength = Len(sFindString)

         lFoundPos = rtb.Find(sFindString, 0, , rtfNoHighlight)

        While lFoundPos > 0

          iMatchCount = iMatchCount + 1

rtb.SelStart = lFoundPos
         rtb.SelLength = lFindLength
          rtb.SelColor = lColor

          lFoundPos = rtb.Find(sFindString, _
            lFoundPos + lFindLength, , rtfNoHighlight)
       Wend
      
        rtb.SelStart = lOriginalSelStart
        rtb.SelLength = lOriginalSelLength

        SetColorWords = iMatchCount  

End Function

- جرب .
الرد }}}
تم الشكر بواسطة:
#8
السلام عليكم

- الكود بعد تعديل عليه :

كود :
Private Sub RichTextBox1_Change()
        SetColorWords RichTextBox1, "vb6", vbRed
      End Sub

Private Function SetColorWords(rtb As RichTextBox, _
                                  sFindString As String, _
                                  lColor As Long) _
                                  As Integer

        Dim lFoundPos As Long
                                      Dim lFindLength As Long
        Dim lOriginalSelStart As Long
        Dim lOriginalSelLength As Long
        Dim lOriginalColor As Long
        
        Dim iMatchCount As Integer

        lOriginalSelStart = rtb.SelStart
        lOriginalSelLength = rtb.SelLength
        lOriginalColor = rtb.SelColor
        
        lFindLength = Len(sFindString)

         lFoundPos = rtb.Find(sFindString, 0, , rtfNoHighlight)

        While lFoundPos > 0

          iMatchCount = iMatchCount + 1

         rtb.SelStart = lFoundPos
         rtb.SelLength = lFindLength
          rtb.SelColor = lColor

          lFoundPos = rtb.Find(sFindString, _
            lFoundPos + lFindLength, , rtfNoHighlight)
       Wend
      
        rtb.SelStart = lOriginalSelStart
        rtb.SelLength = lOriginalSelLength
        rtb.SelColor = lOriginalColor

        SetColorWords = iMatchCount

End Function

- تحياتي .
الرد }}}
تم الشكر بواسطة:



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


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