Results 1 to 13 of 13

Thread: HTML Editor

  1. #1
    Guest

    Post

    Ok, someone gave me some source code to an HTML editor that changes the color of HTML tags to blue but im not good enough to figure it out. Could someone just explain to me how to detect the tags and then turn them blue and capitalize them, and in detail please...

  2. #2
    Guest
    is your html source code in a text box or what? let me know that and i can help you.

  3. #3
    Guest
    if you dont want to copy all the code... download the project here

    http://denniswrenn.virtualave.net/HTMLColorChanger.zip


    paste this into the form code module
    Code:
    Private Sub Form_Load()
    m_TagCol = vbBlue
    End Sub
    
    Private Sub rtfText_Change()
        If Not trapUndo Then Exit Sub 'because trapping is disabled
    
        Dim newElement As New UndoElement   'create new undo element
        Dim c%, l&
    
        'remove all redo items because of the change
        For c% = 1 To RedoStack.Count
            RedoStack.Remove 1
        Next c%
    
        'set the values of the new element
        newElement.SelStart = rtfText.SelStart
        newElement.TextLen = Len(rtfText.Text)
        newElement.Text = rtfText.Text
    
        'add it to the undo stack
        UndoStack.Add Item:=newElement
        
    '    EnableControls
    End Sub
    
    
    
    Private Sub rtfText_KeyDown(KeyCode As Integer, Shift As Integer)
    'GetEditStatus
    Dim TypedIn As String
        If Shift And vbCtrlMask Then
            If KeyCode > vbKey0 And KeyCode < vbKey7 Then
                Dim HeadingTag As String
                HeadingTag = "<H" & CStr(KeyCode - vbKey0) & "></H" & CStr(KeyCode - vbKey0) & ">"
                InsertTag HeadingTag, True
                PlaceCursor HeadingTag, 5
                rtfText.SelColor = vbBlack
            Else
                Select Case KeyCode
                Case vbKeyV
                    ' User pressed Ctrl+V  - Paste
                    Dim a$, S As Long
                    S = rtfText.SelStart ' save this since selstart moves up after the paste
                    a = Clipboard.GetText(vbCFText)
                    rtfText.SelText = ""
                    rtfText.SelText = a    ' This removes any unwanted formatting (font, &c)
                    HtmlColorCode S, rtfText.SelStart
                    
                    KeyCode = 0
                Case vbKeyReturn
                    InsertTag "<P>", True
                    rtfText.SelColor = vbBlack
                    KeyCode = 0
                Case vbKeySpace
                    rtfText.SelColor = vbBlack
                    rtfText.SelText = "&nbsp;"
                    KeyCode = 0
                End Select
            End If
        ElseIf Shift And vbShiftMask Then
            If KeyCode = vbKeyReturn Then
                InsertTag "<BR>", True
                rtfText.SelColor = vbBlack
                KeyCode = 0
            End If
        End If
        IsOutsideTag
        
        
        
        End Sub
    
    
    Private Sub rtfText_KeyUp(KeyCode As Integer, Shift As Integer)
        If KeyCode = vbKeyControl Then
            CtlKey = False
        End If
        IsOutsideTag
        rtfText.SetFocus
    End Sub
    
    
    
    Public Sub GetEditStatus()
       Dim lLine As Long, lCol As Long
       Dim cCol As Long, lChar As Long, i As Long
    
       lChar = rtfText.SelStart + 1
    
       ' Get the line number
       lLine = 1 + SendMessageLong(rtfText.hwnd, EM_LINEFROMCHAR, _
               rtfText.SelStart, 0&)
    
       ' Get the Character Position
       cCol = SendMessageLong(rtfText.hwnd, EM_LINELENGTH, lChar - 1, 0&)
    
       i = SendMessageLong(rtfText.hwnd, EM_LINEINDEX, lLine - 1, 0&)
       lCol = lChar - i
    
        lbl_Lines.Caption = lbl_Lines.Caption & lLine & vbCrLf
       'sbStatusBar.Panels(1).Text = "Line: " & lLine & ", Col: " & lCol
    
    End Sub
    
    
    Public Sub PlaceCursor(Text$, Cursor As Long)
    Dim T As Long
        T = rtfText.SelStart
        rtfText.SelStart = (T + Len(Tag)) - Cursor
    End Sub
    
    Private Sub rtfText_KeyPress(KeyAscii As Integer)
    'pOKUS
    Dim Button As Integer
    Dim Shift As Integer
    Dim x As Single
    Dim y As Single
    'Pokus
    Dim Key As String
    Key = Chr(KeyAscii)
    If Key = "<" Then
    
    '################################
    ' Gives the Combo to select from
    '################################
    'MsgBox "Syntax AutoCoplete will be included in next version."
    
    
    'If lblAutoSyntax.Caption = "1" Then
    'PopupMenu fMainForm.syntax
    'End If
    
    
    
    End If
    On Error Resume Next
        KeyAscii = KeyPressEvent(KeyAscii)
    End Sub
    paste this into and class module called "UndoElement"

    Code:
    Public SelStart As Long  'start position in text box
    Public TextLen As Long
    Public Text As String
    paste this into a regular module called "ColorCode"

    Code:
    Option Explicit
    
    Public m_TextCol As String
    Public m_AttribCol As String
    Public m_TagCol As String
    Public m_CommentCol As String
    Public m_AspCol As String
    
    
    
    Public Sub HtmlHighlight()
    On Error Resume Next
        'frmMain.trapUndo = False
        ' Color Html and asp
        HtmlColorCode
        
        ' Move back to the start of the thing
        frmDocument.rtfText.SelStart = 0
        'frmMain.trapUndo = True
    End Sub
    
    Public Function KeyPressEvent(KeyAscii As Integer) As Integer
        Static cInAttrib As Boolean, cInTag As Boolean
        Static cInAttribQuote As Boolean, cTypedIn As Boolean
        Static cInComment As Boolean
        Static cInASP As Boolean
        Static cInFunction As Boolean
        
        'frmMain.trapUndo = False
        
        Dim cChar As String
    'frmDocument.rtfText
        With frmDocument.rtfText
            cChar = Chr$(KeyAscii)
            
            If cInTag = False And cInAttrib = False And cInComment = False And cInASP = False Then
                .SelColor = m_TextCol
            End If
    
            If cInTag = True And (cInAttrib = True Or cInAttribQuote = True) Then
                .SelColor = m_AttribCol
            End If
    
            If cChar = "<" Then
                .SelColor = m_TagCol
                cInTag = True
                cTypedIn = True
            End If
    
            If cChar = "=" And cInTag = True Then
                cInAttrib = True
            End If
    
            If cChar = Chr$(34) And cInAttrib = True And cInAttribQuote = True Then
                cInAttrib = False
                cInAttribQuote = False
            ElseIf cChar = Chr$(34) And cInAttrib = True And cInAttribQuote = False Then
                cInAttribQuote = True
            End If
    
            If cChar = " " And (cInAttribQuote = False And cInTag = True) Then
                .SelColor = m_TagCol
                cInAttrib = False
            End If
    
            If cChar = "!" And Mid$(.Text, .SelStart, 1) = "<" Then
    
                .SelStart = .SelStart - 1
                .SelLength = 1
                .SelColor = m_CommentCol
                .SelText = "<!--"
    
                cInTag = False
                cInAttrib = False
                cInASP = False
                cInComment = True
    
                KeyAscii = 0
            End If
            
            If cChar = "%" And Mid$(.Text, .SelStart, 1) = "<" Then
    
                .SelStart = .SelStart - 1
                .SelLength = 1
                .SelColor = m_AspCol
                .SelText = "<%"
    
                cInTag = False
                cInAttrib = False
                cInASP = True
                cInComment = False
    
                KeyAscii = 0
            End If
    
            If cChar = ">" Then
                If cInComment = False And cInASP = True Then
                    .SelColor = m_AspCol
                ElseIf cInComment = True And cInASP = False Then
                    .SelColor = m_CommentCol
                ElseIf cInComment = False And cInASP = False Then
                    .SelColor = m_TagCol
                End If
                
                cInTag = False
                cInASP = False
                cInComment = False
                cTypedIn = False
            End If
    
        End With
    
        KeyPressEvent = KeyAscii
        
        'frmMain.trapUndo = True
    ErrExit:
        Exit Function
    End Function
    
    ' Insert text w/tag coloring if necessary
    
    Public Sub InsertTag(Tag$, StopAsp As Boolean)
    Dim S As Long
        'frmMain.trapUndo = False
        S = frmDocument.rtfText.SelStart
        If Len(frmDocument.rtfText.SelText) > 0 Then frmDocument.rtfText.SelText = ""
        frmDocument.rtfText.SelText = Tag$
        
        If StopAsp = True Then
            HtmlColorCode S, S + Len(Tag), True
    Else
    
            HtmlColorCode S, S + Len(Tag), False
    
        End If
        
        'frmMain.trapUndo = True
    End Sub
    
    ' Insert Asp code with asp coloring
    
    Public Sub InsertAspTag(Tag$)
    Dim U As Long
        U = frmMain.rtfText.SelStart
        If Len(frmMain.rtfText.SelText) > 0 Then frmMain.rtfText.SelText = ""
        frmMain.rtfText.SelText = Tag$
        
        frmMain.trapUndo = False
        ASPColorCode U, U + Len(Tag)
        frmMain.trapUndo = True
    End Sub
    
    ' This function determines whether the caret is currently outside a tag. This was a royal pain in the ass.
    
    Public Function IsOutsideTag()
    On Error Resume Next
    Dim LastGT As Long, LastLT As Long, NextGT As Long, NextLT As Long
    Dim EndTag As Long, StartTag As Long
    Dim txt$, Start As Long, Start2 As Long
    Dim InMainTag As Boolean, InEndTag As Boolean
        
        txt = frmDocument.rtfText.Text
        Start = frmDocument.rtfText.SelStart
        
        If Start = 0 Then
            m_TextCol = vbBlack
            Exit Function
        Else
            EndTag = InStr(Start + 1, txt, ">")
            StartTag = InStr(Start + 1, txt, "<")
    
            If StartTag > EndTag Then
                InMainTag = True
            Else
                InMainTag = False
            End If
            
            LastLT = RevInStr(txt, "<", Start + 1)
            LastGT = RevInStr(txt, ">", Start + 1)
    
            If LastLT < LastGT Then
                InEndTag = True
            Else
                InEndTag = False
            End If
    
            If InMainTag = True Or InEndTag = True Then
                m_TextCol = frmDocument.rtfText.SelColor
            Else
                m_TextCol = vbBlack
            End If
        End If
    End Function
    
    ' ##########################################################################################
    ' These are the main color coding functions. These are not called ever by the user.
    ' ##########################################################################################
    
    ' This is the main color coding function. This does everything html, comments, and attributes. It also calls
    ' the ASP color coding function if nessasary
    
    Public Function HtmlColorCode(Optional startchar As Long = 1, Optional endchar As Long = -1, Optional StopAsp As Boolean = False)
    On Error GoTo ErrHandler
        ' These are the variables for the tags for ColorCoding
        Dim CommentOpenTag As String
        Dim CommentCloseTag As String
    
        Dim oldselstart As Long, oldsellen As Long
        
        ' These are place holders for the color coding
        Dim tag_open As Long
        Dim tag_close As Long
        Dim bef As String
        Dim Curr As String
        Dim CI As Integer
        'frmMain.trapUndo = False
        
        ' Find out where the cursor is
        oldselstart = frmDocument.rtfText.SelStart
        oldsellen = frmDocument.rtfText.SelLength
        
        If endchar = -1 Then endchar = Len(frmDocument.rtfText.Text)
        If startchar = 0 Then startchar = 1
    
        ' These are the close tags for colorcoding
        
        tag_close = startchar
        
        ' Lets try to hide the color coding from the user:
        frmDocument.rtfText.HideSelection = True
        CI = 0
        frmDocument.rtfText.Visible = False
        frmDocument.PrgBar.Visible = True
        ' Now lets loop through the tags and color code it
        Do
        CI = CI + 1
        If CI = 100 Then
        CI = 0
        End If
        
        frmDocument.PrgBar.Value = CI
            ' See where the next tag starts. if any
            tag_open = InStr(tag_close, frmDocument.rtfText.Text, "<")
            
            'If so, then color it...
            If tag_open <> 0 Then  'Found a tag
                
                'Get everything before the tag we're on...
                bef = Mid$(frmDocument.rtfText.Text, 1, tag_open - 1)
                
                'Find the end of the next tag...
                tag_close = InStr(tag_open, frmDocument.rtfText.Text, ">")
    
                'Get the current HTML tag...
                Curr = Mid$(frmDocument.rtfText.Text, tag_open, tag_close - tag_open + 1)
                
                If tag_close <> 0 Then
                    Select Case Left$(Curr, 3)
                        Case "<!-"
                            ' It's a comment...
                            tag_close = InStr(tag_open, frmDocument.rtfText.Text, "->") + 1
                                frmDocument.rtfText.SelStart = tag_open - 1
                                frmDocument.rtfText.SelLength = tag_close - tag_open + 1
                                frmDocument.rtfText.SelColor = m_CommentCol
                        Case Else
                            ' This colors basic Html tags and then colors the attributes
                            cycleAttrib Curr, tag_open, tag_close
                    End Select
                End If
                
                If tag_close = 0 Or tag_close >= endchar Then
                    ' If we are coloring tags and it's over the end tag then
                    ' get me out of this loop and don't color anymore
                    Exit Do
                End If
            Else
                Exit Do
            End If
        Loop
        frmDocument.PrgBar.Visible = False
        frmDocument.rtfText.Visible = True
        ' Color ASP Stuff only if we need to. We have a special function for coloring ASP tags so we won't
        ' worry if this deals with it or not.
        If StopAsp = False Then
            ASPColorCode startchar, endchar
        End If
        
        frmDocument.rtfText.SelStart = oldselstart
        frmDocument.rtfText.SelLength = oldsellen
        frmDocument.rtfText.HideSelection = False
        frmDocument.rtfText.SetFocus
        
        'frmMain.trapUndo = True
        Exit Function
        
    ErrHandler:
        Exit Function
    End Function
    
    ' This function colorizes ASP code
    
    Private Function ASPColorCode(Optional startchar As Long = 1, Optional endchar As Long = -1)
    On Error GoTo ErrHandler
        Dim oldselstart As Long, oldsellen As Long
        
        ' These are place holders for the color coding
        Dim tag_open As Long
        Dim tag_close As Long
        Dim bef As String
        Dim Curr As String
        
        'frmMain.trapUndo = False
        
        ' Find out where the cursor is
        oldselstart = frmDocument.rtfText.SelStart
        oldsellen = frmDocument.rtfText.SelLength
        
        If endchar = -1 Then endchar = Len(frmDocument.rtfText.Text)
        If startchar = 0 Then startchar = 1
    
        ' These are the close tags for colorcoding
        
        tag_close = startchar
        
        ' Lets try to hide the color coding from the user:
        frmDocument.rtfText.HideSelection = True
        
        ' Now lets loop through the tags and color code it
        Do
            ' See where the next tag starts. if any
            tag_open = InStr(tag_close, frmDocument.rtfText.Text, "<%")
            
            'If so, then color it...
            If tag_open <> 0 Then  'Found a tag
                
                'Get everything before the tag we're on...
                bef = Mid$(frmDocument.rtfText.Text, 1, tag_open - 1)
                
                'Find the end of the next tag...
                tag_close = InStr(tag_open, frmDocument.rtfText.Text, "%>")
    
                'Get the current HTML tag...
                Curr = Mid$(frmDocument.rtfText.Text, tag_open, tag_close - tag_open + 1)
                
                If tag_close <> 0 Then
                    Select Case Left$(Curr, 2)
                        Case "<%"
                            ' It's asp
                            tag_close = InStr(tag_open, frmDocument.rtfText.Text, "%>") + 1
                                frmDocument.rtfText.SelStart = tag_open - 1
                                frmDocument.rtfText.SelLength = tag_close - tag_open + 1
                                frmDocument.rtfText.SelColor = m_AspCol
                        Case Else
                            ' it's not an asp tag so do nothing
                    End Select
                End If
                
                If tag_close = 0 Or tag_close >= endchar Then
                    ' If we are coloring tags and it's over the end tag then
                    ' get me out of this loop and don't color anymore
                    Exit Do
                End If
            Else
                Exit Do
            End If
        Loop
        
        frmDocument.rtfText.SelStart = oldselstart
        frmDocument.rtfText.SelLength = oldsellen
        frmDocument.rtfText.HideSelection = False
        frmDocument.rtfText.SetFocus
        
        'frmMain.trapUndo = True
        
        Exit Function
        
    ErrHandler:
        Exit Function
    End Function
    
    ' This cycles through the html and comes back with the right tag colors for the tag and all of it's
    ' attributes
    
    Private Function cycleAttrib(CurrTag As String, opentag As Long, closetag As Long)
        
        Dim fPos As Long, sPos As Long, qPos As Long, qnPos As Long, aPos As Long, tBeg As Long, tEnd As Long
        Dim isFirstCycle As Boolean
        Dim eTag As String
        Dim sPosTxt As String
        Dim LeftOver As Long
        Dim EndTag As Long, QuotePos As Long, QuoteEndPos As Long
        
        'frmDocument.trapUndo = False
        
        eTag = CurrTag
        isFirstCycle = True
    
        Do While Len(eTag) > 0
            fPos = InStr(1, eTag, "=")
    
            If (fPos = 0 And isFirstCycle = True) Then
                ' This just checks to see if it's a basic html tag w/ no attributes and if so colors that
                ' without going through the rest of the junk.
                frmDocument.rtfText.SelStart = opentag - 1
                frmDocument.rtfText.SelLength = closetag - opentag + 1
                frmDocument.rtfText.SelColor = m_TagCol
                Exit Function
            ' It looks like we have an attribute. Here comes the hard part...
            ElseIf fPos <> 0 Then 'Put in the color info...
                If Left$(eTag, 1) = "<" Then
                    ' This brings back the entire tag. something like:
                    ' <img src="blah.jpg" onclick="blah">
                    ' and then color codes the entire thing
                    tBeg = opentag
                    tEnd = opentag + fPos
    
                    ' Color Code the entire tag first
                    frmDocument.rtfText.SelStart = tBeg - 1
                    frmDocument.rtfText.SelLength = closetag - tBeg + 1
                    frmDocument.rtfText.SelColor = m_TagCol
    
                    ' This brings back the text that is past the attribute. in the previous example:
                    ' "blah.jpg" onclick="blah">
                    eTag = Mid$(eTag, fPos + 1)
                    LeftOver = closetag - Len(eTag)
                End If
            End If
            
            'Find the first instance of a space in the
            'part of the tag that we have left...
            sPos = InStr(1, eTag, Chr$(32))
    
            'Gets the text up to the next space...
            sPosTxt = Mid$(eTag, 1, sPos)
            
            'Checks to see if there's a quote in the text...
            qPos = InStr(1, sPosTxt, Chr$(34))
    
            'If there's a quote found, then we need to find
            'its end...
            If qPos <> 0 Then
                'Look for the next quote...
                qnPos = InStr(2, eTag, Chr$(34))
    
                If qnPos <> 0 Then
                    sPosTxt = Mid$(eTag, 1, qnPos)
                End If
            End If
    
            LeftOver = closetag - Len(eTag)
            frmDocument.rtfText.SelStart = LeftOver
            frmDocument.rtfText.SelLength = Len(sPosTxt)
            frmDocument.rtfText.SelColor = m_AttribCol
            
            'Truncates the tag so there's no attrib value left...
            eTag = Mid$(eTag, Len(sPosTxt) + 1)
    
            'Find the next position of an equal sign...
            sPos = InStr(1, eTag, "=")
    
            'If there's no =, then we know we're on the last
            'attrib value, so we need to put in some final
            'info...all that's left is something like:
            '"#ffffff">
            If sPos = 0 Then
                'Put in the attrib color before the ">"
                'if it's the last attribute...
                eTag = Mid$(eTag, 1, Len(eTag) - 1)
    
                'Insert the RTF info...
                'bef = bef & infoRTF & AttribInfo & eTag
                frmDocument.rtfText.SelStart = LeftOver
                frmDocument.rtfText.SelLength = Len(eTag)
                frmDocument.rtfText.SelColor = m_AttribCol
    
                'Truncate the end...
                sPos = Len(eTag)
                Exit Do
            End If
    
            'Truncates the tag appropriately...
            eTag = Mid$(eTag, sPos + 1)
            isFirstCycle = False
    
            'If there's nothing left, then we need to exit
            'the loop so it doesn't loop infinitely...
            If sPos = 0 And qPos = 0 Then Exit Do
        Loop
        
        'frmMain.trapUndo = True
        Exit Function
    End Function
    paste this into a module called "Declares"

    Code:
    Public Declare Function SendMessage Lib "user32" Alias _
        "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
            ByVal wParam As Long, lParam As Long) As Long
    
    
    Public Const WM_USER = &H400
    Public Const EM_HIDESELECTION = WM_USER + 63
    paste this into a module called "VB6Function"

    Code:
    Option Explicit
    ' These are vb6 functions not in vb5. If using vb 6 comment out these functions or
    ' remove this module from the project... note that i have edited some of these functions
    ' for my use and the vb 6 functions may not work the same. You could always change the
    ' name of these functions and replace the call in the code. These functions were taken from
    ' support.microsoft.com
    
    Public Function RevInStr(ByVal sIn As String, sFind As String, Optional nStart As Long = 1, Optional bCompare As VbCompareMethod = vbBinaryCompare) As Long
    Dim nPos As Long
        nPos = InStr(nStart, sIn, sFind, bCompare)
        If nPos = 0 Then
            RevInStr = 0
        Else
            RevInStr = Len(sIn) - nPos - Len(sFind) + 2
        End If
    End Function
     
    ' End VB6 functions
    [Edited by denniswrenn on 05-22-2000 at 03:24 PM]

  4. #4
    Guest
    Thank you so much for posting all that but theres a problem with it, it colors non HTML tags too. I need it to color and capitalize only html tags.

  5. #5
    Guest
    so are you using a rich text box for the the html code? im sure there is an easier way than what was posted. you want to get all of the tags?

  6. #6
    Guest
    download the file, I may have made a copy and paste error.
    it works fine for me, but it doesnt uppercase... I am sure I could modify it a bit to make it upper case...
    it would be easy, if I can find the temp. string that holds the text to make blue... I can just ucase or whatever the command is...
    BTW I copied this code from an html editor on http://www.planetsourcecode.com

  7. #7
    Guest
    Yes i am using a rich text box and since i am not that advanced the easiest way would be the best for me. And i did download the file, it still turns non-html tags blue.

  8. #8
    Guest
    Will someone please tell me how to do it, please...

  9. #9
    Conquistador
    Join Date
    Dec 1999
    Location
    Australia
    Posts
    4,527
    you can change the case by using UCASE

  10. #10
    Guest
    oh, I see what your talking about...
    you would have to have a list of all the tags.... which would be hard...

  11. #11
    Guest
    Yup thats exactly how i want to do it. You got any idea on the code for it?

  12. #12
    Guest
    Actually I believe it was me who gave you the code. Here
    it is again. Make a Form with a RichTextBox on it.
    Put the following code in the Declarations section of your Form.

    Code:
    Option Explicit
    
    Private Sub HighlightText(sKeyword As String)
    
    Dim nStart As Integer, sPrevChar As String, sNextChar As String
        
    nStart = InStr(1, LCase(RichTextBox1.Text), sKeyword)
    
    Do While nStart <> 0
    If nStart > 1 Then
        sPrevChar = Mid$(RichTextBox1.Text, nStart - 1, 1)
    Else
        sPrevChar = " "
    End If
                                                    
    
    If Len(RichTextBox1.Text) >= nStart + Len(sKeyword) Then
        sNextChar = Mid$(RichTextBox1.Text, nStart + Len(sKeyword), 1)
    Else
        sNextChar = " "
    End If
                                             
    
    If (sPrevChar = Chr(32) Or sPrevChar = Chr(13) Or _
    sPrevChar = Chr(10) Or sPrevChar = Chr(9)) And _
    (sNextChar = Chr(32) Or sNextChar = Chr(13) Or _
    sNextChar = Chr(10) Or sNextChar = Chr(9)) Then
    
    With RichTextBox1
    
        .SelStart = nStart - 1
        .SelLength = Len(sKeyword)
        .SelColor = vbBlue
        .SelText = UCase(sKeyword)
        .SelStart = Len(RichTextBox1.Text)
        .SelColor = vbBlack
    
    End With
    End If
    
                                                    
    
    nStart = InStr(nStart + Len(sKeyword), LCase(RichTextBox1.Text), sKeyword)
    
    Loop
    
    End Sub
    
    
    Private Sub Form_Resize()
    
    RichTextBox1.Move 0, 0, ScaleWidth, ScaleHeight
    
    End Sub
    
    Private Sub RichTextBox1_Change()
    
    With RichTextBox1
        .SelStart = 0
        .SelLength = Len(.Text)
        .SelColor = vbBlack
        .SelStart = Len(.Text)
    End With
    
                                                
    
    HighlightText "<html>"
    HighlightText "<title>"
    HighlightText "<body>"
    HighlightText "</html>"
    HighlightText "</title>"
    HighlightText "</body>"
                                
    End Sub

    I hope this helps.

  13. #13
    Guest
    Hey Megatron,
    Yup thats what i was looking for, but it screws up sometimes. If you have a line of text and you go to the beggining of it and press delete it moves the cursor to the front. But i found a site that said it used api to do this but i couldnt make beans or farts of it, heres the url maybe you can. http://members.xoom.com/_XMCM/yellow...es/tboxex1.htm

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width