Solved

Richtextbox text color

Posted on 2008-06-20
5
1,032 Views
Last Modified: 2008-09-12
I need to change the color of the added line color, but after three repetitions all line colors become the same.

You may see the function that adds new line to the richtextbox and assigns color to it.

When I run it four times with the settings you may see except the first line all lines become red.
Private Sub myworkerclass_AddDateTime(ByVal message As String, ByVal thecolor As System.Drawing.Color) Handles myworkerclass.AddDateTime

        Me.rtb_messages.Text = message & vbCrLf & Me.rtb_messages.Text

        Me.rtb_messages.Select(0, message.Length)

        Me.rtb_messages.SelectionColor = thecolor

    End Sub

 

        myworkerclass_AddDateTime("Test1!", Color.Purple)

        myworkerclass_AddDateTime("Test2!", Color.Red)

        myworkerclass_AddDateTime("Test3!", Color.YellowGreen)

        myworkerclass_AddDateTime("Test4!", Color.Tomato)

Open in new window

0
Comment
Question by:emresamisuzer
  • 2
  • 2
5 Comments
 
LVL 48

Expert Comment

by:jpaulino
ID: 21832301
Hi,

Try to change you sub to this:

    Private Sub myworkerclass_AddDateTime(ByVal message As String, ByVal thecolor As System.Drawing.Color) Handles myworkerclass.AddDateTime

        Me.rtb_messages.AppendText(message + vbNewLine)

        Me.rtb_messages.Select(Me.rtb_messages.Find(message), message.Length)

        MsgBox(Me.rtb_messages.SelectedText)

        Me.rtb_messages.SelectionColor = thecolor

    End Sub

Open in new window

0
 
LVL 85

Expert Comment

by:Mike Tomlinson
ID: 21832490
You can also do it this way:
    Private Sub myworkerclass_AddDateTime(ByVal message As String, ByVal thecolor As System.Drawing.Color) Handles myworkerclass.AddDateTime

        Me.rtb_messages.SelectionStart = Me.rtb_messages.TextLength

        Me.rtb_messages.SelectionColor = thecolor

        Me.rtb_messages.SelectedText = message & vbCrLf

    End Sub

Open in new window

0
 

Author Comment

by:emresamisuzer
ID: 21836666
Thanks for your responses but I need the appended text to be appended at the top line of the richtextbox. That is why I use the code:
Me.rtb_messages.Text = message & vbCrLf & Me.rtb_messages.Text
0
 
LVL 48

Accepted Solution

by:
jpaulino earned 500 total points
ID: 21836830
You can change it to this:
    Private Sub myworkerclass_AddDateTime(ByVal message As String, ByVal thecolor As System.Drawing.Color) Handles myworkerclass.AddDateTime

        With Me.rtb_messages

            .SelectedText = IIf(.SelectedText = String.Empty, message & vbNewLine, message & vbNewLine & .SelectedText)

            .Select(.Find(message), message.Length)

            .SelectionColor = thecolor

        End With

    End Sub

Open in new window

0
 
LVL 85

Expert Comment

by:Mike Tomlinson
ID: 21838228
Mine would be:
    Private Sub myworkerclass_AddDateTime(ByVal message As String, ByVal thecolor As System.Drawing.Color) Handles myworkerclass.AddDateTime

        Me.rtb_messages.SelectionStart = 0

        Me.rtb_messages.SelectionLength = 0

        Me.rtb_messages.SelectionColor = thecolor

        Me.rtb_messages.SelectedText = message & vbCrLf

    End Sub

Open in new window

0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Parsing a CSV file is a task that we are confronted with regularly, and although there are a vast number of means to do this, as a newbie, the field can be confusing and the tools can seem complex. A simple solution to parsing a customized CSV fi…
A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
Along with being a a promotional video for my three-day Annielytics Dashboard Seminor, this Micro Tutorial is an intro to Google Analytics API data.
With the power of JIRA, there's an unlimited number of ways you can customize it, use it and benefit from it. With that in mind, there's bound to be things that I wasn't able to cover in this course. With this summary we'll look at some places to go…

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now