RichTextBox Forecolor

Posted on 2007-12-06
Last Modified: 2012-08-13
I searched all the forums about this issue. I found some titles..I tried some codes like:

Private Sub Form_Click()
    RichTextBox1.SelStart = 0
    RichTextBox1.SelLength = Len(RichTextBox1.Text)
    RichTextBox1.SelColor = vbWhite
End Sub


Private Sub Form_Load()
    RichTextBox1.SelColor = vbWhite
    RichTextBox1.SelText = "This is red."
End Sub

but they didnt worked.... My background in RTB is "black" and I would like to set forecolor "white"..Is there any idea for this?.. Thank you
Question by:hakanogu
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
LVL 76

Expert Comment

ID: 20418800
They work for me.
The _Click one turns the whole text white.
The _Load one inserts some text the selection and colours it white

Accepted Solution

mukeshlaku earned 500 total points
ID: 20418911

on form load event write below code, it should be one line code.

RichTextBox1.TextRTF ="{\rtf1\ansi\ansicpg1252\deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}}
{\colortbl ;\red255\green255\blue255;}
\par }"

this will resolve your problem

Mukesh Lakum

Author Comment

ID: 20422917
0t didnt work mukeshlaku..nothinh happen..But the other codes it is working, GrahamScan as you said, but the problem:

I put the codes in Form_Click event as you did because they didnt work in Form_Load event:

Private Sub Form_Click()
    RichTextBox1.SelStart = 0
    RichTextBox1.SelLength = Len(RichTextBox1.Text)
    RichTextBox1.SelColor = vbWhite
End Sub

then I put Call command in Form_Load event:

Private Sub Form_Load
       Call Form_Click
End Sub

they changed my text to "white" ok. there is no problem but after click a command button that have the code below everything is again black and just "S1"s are yellow.

CPrivate Sub CommandButton_Click

      For Counter = 1 To Len(Me.RichTextBox1.Text)
     StringPos = InStr(Counter, Me.RichTextBox1.Text, " S3 ", vbTextCompare)
     If StringPos > 0 Then
       Me.RichTextBox1.SelStart = StringPos
       Me.RichTextBox1.SelLength = 2
       Me.RichTextBox1.SelColor = vbYellow
       Counter = StringPos + 4
       Exit For
     End If
  Next Counter

End Sub


When the codes above run ( they are used to search "S3" and paint them "Yellow" ),

What should I do? I want all "S3" yellow and all the other text black..Thank you...
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Assisted Solution

mukeshlaku earned 500 total points
ID: 20425655

use following code as form_load event

Private Sub Form_Load()
Dim str1 As String
str1 = "{\rtf1\ansi\ansicpg1252\deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}}" & vbCrLf
str1 = str1 & "{\colortbl ;\red255\green255\blue255;\red255\green255\blue255;}" & vbCrLf
str1 = str1 & "\viewkind4\uc1\pard\cf1\f0\fs24 \cf2" & vbCrLf
str1 = str1 & "\par }"
RichTextBox1.TextRTF = str1
End Sub
LVL 26

Expert Comment

ID: 20426693
your code works for me

Author Comment

ID: 20443204
I am sure It works but I couldnt change my forecolor..Anyway I gave up to change my forecolor I will use again white background and black text again..Thanks to everyone...

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

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

You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

732 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