Click here to Skip to main content
12,556,534 members (60,160 online)
Click here to Skip to main content
Add your own
alternative version


113 bookmarked

Using colors in CEdit and CStatic

, 31 Mar 2001
Rate this:
Please Sign up or sign in to vote.
Classes derived from CEdit and CStatic. It makes changing colors for text and backgrounds easy.
<!-- Download Links --> <!-- Article image -->

Sample Image - ColorEdit_ColorStatic.jpg

<!-- Add the rest of your HTML here -->


I created these two classes to make changing the color of your Edit Box text and your Static text easy. I didn't need all the overhead of a CRichEditCtrl , but I did need to change the color of my text as well as the background color of the box. CStatic didn't have an easy way of changing the color of your text either.

These classes are derived from CEdit and CStatic.

How to Use

Include the files ColorEdit.cpp, ColorEdit.h and Color.h in your project if your just working with Edit Boxes. If you want to incorporate colored static text also you would add the files ColorStatic.cpp, ColorStatic.h.

In your dialogs header file add :

#include "ColorEdit.h"
#include "ColorStatic.h" //only if using colored static text.

	CColorEdit m_ebCtl;
	CColorStatic m_stText; //only if using colored static text.

There are two ways you can associate your control id's with the classes. From now on I will assume you are using both classes.

In your dialogs .cpp file add :

void YourDlg::DoDataExchange(CDataExchange* pDX)
	DDX_Control(pDX, IDC_ST_TEXT, m_stText);
	DDX_Control(pDX, IDC_EB_CTL, m_ebCtl);


BOOL CYourDlg::OnInitDialog()
    // TODO: Add extra initialization here

Now that this is finished it is time to use the class. There are three functions available for Edit Boxes and two for Static Text.

They are as follows:

There are three functions available Currently:
SetBkColor(COLORREF crColor) // Works for both classes
SetTextColor(COLORREF crColor) // Works for both classes
SetReadOnly(BOOL flag = TRUE) //This function is for CColorEdit only.

In the file Color.h is the following code:

// Color.h
// Colorref's to use with your Programs

#define RED        RGB(127,  0,  0)
#define GREEN      RGB(  0,127,  0)
#define BLUE       RGB(  0,  0,127)
#define LIGHTRED   RGB(255,  0,  0)
#define LIGHTGREEN RGB(  0,255,  0)
#define LIGHTBLUE  RGB(  0,  0,255)
#define BLACK      RGB(  0,  0,  0)
#define WHITE      RGB(255,255,255)
#define GRAY       RGB(192,192,192)

These are just a few I picked out but add as many colors as you need.

Here is how easy it is to use:

m_ebCtl.SetTextColor(BLUE); //Changes the Edit Box text to Blue
m_ebCtl.SetBkColor(WHITE);  //By default your background color is the
                            //same as your system color(color of dialog)
m_ebCtl.SetReadOnly();      //This makes it so nobody can edit the text.
                            //If you disable the box it does not let you
                            //change colors.
m_stText.SetTextColor(RED); //Changes the Static Text to Red
m_stText.SetBkColor(GREEN); //You probably will not use it, but it's here.

I hope someone out there finds this useful :)


This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


About the Author

Robert Brault
Web Developer
United States United States
No Biography provided

You may also be interested in...


Comments and Discussions

GeneralMy vote of 5 Pin
Member 1146415210-Apr-15 2:11
memberMember 1146415210-Apr-15 2:11 
GeneralMy vote of 5 Pin
Rainer Klopfer7-Sep-14 16:36
memberRainer Klopfer7-Sep-14 16:36 
GeneralMy vote of 5 Pin
EricAtec12-Sep-12 5:22
memberEricAtec12-Sep-12 5:22 
QuestionStill great after all this time Pin
ferretchen21-Jun-12 15:27
memberferretchen21-Jun-12 15:27 
QuestionBackground color Pin
pippo pioppo21-Dec-11 23:26
memberpippo pioppo21-Dec-11 23:26 
GeneralMy vote of 5 Pin
OriolBayo21-Oct-11 0:03
memberOriolBayo21-Oct-11 0:03 
GeneralCannot open include file 'ColorEdit.h': No such file or directory ???? Pin
amarasat2-Jun-11 4:02
memberamarasat2-Jun-11 4:02 
GeneralRe: Cannot open include file 'ColorEdit.h': No such file or directory ???? Pin
Robert Brault2-Jun-11 4:05
memberRobert Brault2-Jun-11 4:05 
GeneralRe: Cannot open include file 'ColorEdit.h': No such file or directory ???? Pin
amarasat2-Jun-11 4:27
memberamarasat2-Jun-11 4:27 
GeneralVery useful plug'n'play code :-) Pin
codenrico24-Feb-11 22:07
membercodenrico24-Feb-11 22:07 
GeneralMy vote of 5 Pin
codenrico24-Feb-11 22:05
membercodenrico24-Feb-11 22:05 
Generalthanks Pin
romantic_sjk30-Aug-10 22:16
memberromantic_sjk30-Aug-10 22:16 
GeneralLicensing for this code Pin
jmanti4-May-10 7:57
memberjmanti4-May-10 7:57 
GeneralRe: Licensing for this code Pin
Robert Brault30-Mar-11 3:14
memberRobert Brault30-Mar-11 3:14 
QuestionCColorStatic() Pin
GillWest20-Apr-10 8:04
memberGillWest20-Apr-10 8:04 
GeneralThank you very much! Pin
Michail24-Jan-10 23:17
memberMichail24-Jan-10 23:17 
QuestionHow to change the color part of a MessageWindow Pin
afotiou17-Nov-08 1:39
memberafotiou17-Nov-08 1:39 
GeneralThank Pin
nobihai26-Oct-08 5:23
membernobihai26-Oct-08 5:23 
Generalthanks a lot Pin
liuzhiyong27-Sep-08 23:17
memberliuzhiyong27-Sep-08 23:17 
GeneralAwesome - finally something that just worked out of the box. Pin
Gishu Pillai19-Nov-07 18:59
memberGishu Pillai19-Nov-07 18:59 
QuestionHow to resize static control in DrawItem method Pin
rajnijain6-Sep-07 0:08
memberrajnijain6-Sep-07 0:08 
GeneralBug int the program Pin
Aimin Liu26-Feb-07 21:29
memberAimin Liu26-Feb-07 21:29 
GeneralRe: Bug int the program Pin
JSB2811-May-07 1:05
memberJSB2811-May-07 1:05 
QuestionBug in my utilisation Pin
baerten2-Feb-07 5:11
memberbaerten2-Feb-07 5:11 
AnswerRe: Bug in my utilisation Pin
Robert Brault2-Feb-07 5:22
memberRobert Brault2-Feb-07 5:22 
GeneralRe: Bug in my utilisation Pin
baerten4-Feb-07 21:31
memberbaerten4-Feb-07 21:31 
QuestionAssertion errors Pin
coniaker21-Jan-07 20:38
memberconiaker21-Jan-07 20:38 
GeneralThanks! Pin
SpitfireX12-Jun-06 2:26
memberSpitfireX12-Jun-06 2:26 
GeneralUnnessessary / Useless / Slowing code Pin
darkzangel21-May-06 5:00
memberdarkzangel21-May-06 5:00 
AnswerRe: Unnessessary / Useless / Slowing code Pin
Synetech24-May-06 4:03
memberSynetech24-May-06 4:03 
GeneralThank you very much Pin
Shangshu7-Mar-06 16:17
memberShangshu7-Mar-06 16:17 
GeneralThanks! Pin
Pauls217-Feb-06 11:30
memberPauls217-Feb-06 11:30 
GeneralWhy not working in CPropertyPage Pin
sbing0316-Feb-06 7:40
membersbing0316-Feb-06 7:40 
GeneralRe: Why not working in CPropertyPage Pin
Robert Brault16-Feb-06 10:25
memberRobert Brault16-Feb-06 10:25 
GeneralRe: Why not working in CPropertyPage Pin
sbing0317-Feb-06 2:32
membersbing0317-Feb-06 2:32 
JokeEven working on WindowsCE :-) Pin
NitsanRachman31-Jan-06 20:03
memberNitsanRachman31-Jan-06 20:03 
Questionwhy deconstruct function not deleteobject(cbrush)? Pin
beelzebub9-Oct-05 18:49
memberbeelzebub9-Oct-05 18:49 
GeneralGood stuff Pin
Tony Reeves12-Apr-05 4:06
memberTony Reeves12-Apr-05 4:06 
Questionhow to change fonts in CEdit? Pin
Adobe28-Jan-05 13:46
memberAdobe28-Jan-05 13:46 
AnswerRe: how to change fonts in CEdit? Pin
Robert Brault28-Jan-05 16:38
memberRobert Brault28-Jan-05 16:38 
AnswerRe: how to change fonts in CEdit? Pin
vikas amin23-Sep-05 4:31
membervikas amin23-Sep-05 4:31 
Questionhow to use this code for dynamically created controls Pin
firstreflex20-Dec-04 2:53
memberfirstreflex20-Dec-04 2:53 
GeneralHelp required on bit more complex scenario Pin
firstreflex16-Dec-04 10:04
memberfirstreflex16-Dec-04 10:04 
Generalselective color change Pin
dwb27-Oct-04 8:27
memberdwb27-Oct-04 8:27 
GeneralThanks Pin
fastfootskater16-Feb-04 20:22
memberfastfootskater16-Feb-04 20:22 
GeneralThanks!! Pin
Uncle Sash15-Oct-03 10:17
memberUncle Sash15-Oct-03 10:17 
QuestionCan this work on CDialogBar??? Pin
michal_zu21-Nov-01 21:45
membermichal_zu21-Nov-01 21:45 
QuestionHow to change the color of the border? Pin
KK24-Oct-01 22:49
memberKK24-Oct-01 22:49 
AnswerRe: How to change the color of the border? Pin
Robert Brault31-Oct-01 6:59
memberRobert Brault31-Oct-01 6:59 
AnswerRe: How to change the color of the border? Pin
Wizard_013-Jan-02 6:09
memberWizard_013-Jan-02 6:09 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.161026.1 | Last Updated 1 Apr 2001
Article Copyright 2001 by Robert Brault
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid