Add a little Color to your Console Text

vegaseat

Things don't have to be black and white all the time. Use a Windows API call to add some color to your text output.

42,830 Views
About the Author

Scientist

// color your text in Windows console mode
// colors are 0=black 1=blue 2=green and so on to 15=white  
// colorattribute = foreground + background * 16
// to get red text on yellow use 4 + 14*16 = 228
// light red on yellow would be 12 + 14*16 = 236
// a Dev-C++ tested console application by  vegaseat  07nov2004

#include <iostream>
#include <windows.h>   // WinApi header

using namespace std;    // std::cout, std::cin

int main()
{
  HANDLE  hConsole;
	int k;
	
  hConsole = GetStdHandle(STD_OUTPUT_HANDLE);

  // you can loop k higher to see more color choices
  for(k = 1; k < 255; k++)
  {
    // pick the colorattribute k you want
    SetConsoleTextAttribute(hConsole, k);
    cout << k << " I want to be nice today!" << endl;
  }
  
  cin.get(); // wait
  return 0;
}
venomlash 55 Junior Poster

Nice...
How do you change the background color?
Pretty please?
And is there a way to make the program appear fullscreen when started up?

Akilah712 0 Newbie Poster

I have tried to use this in my program.

However when I used #include<windows.h> I get errors when I compile.

I am using the MSVisual 6.0 ???

mistercow.pnoy 0 Newbie Poster

on windows only:
system("color <put your colors here>");

colors the whole window and all text to any of the standard 16 colors

//0 = Black 8 = Gray
//1 = Blue 9 = Light Blue
//2 = Green a = Light Green
//3 = Aqua b = Light Aqua
//4 = Red c = Light Red
//5 = Purple d = Light Purple
//6 = Yellow e = Light Yellow
//7 = White f = Bright White

you put two characters, first one is background color, second is text color:
system("color c0"); //colors background to light red, with black text

dombit 0 Newbie Poster

ya, bakround color use . - system("color f0"); and #include <stdlib.h> it will make the bacround wight with black text for more color codes type 'color help' in cmd prompt. the first nuber ids the backround and the seconed is the text. also to start the consol in full screen send the keys alt and enter like this

keybd_event(VK_MENU, 0x38, 0, 0);
keybd_event(VK_RETURN, 0x1c, 0, 0);
keybd_event(VK_RETURN, 0X1c, KEYEVENTF_KEYUP, 0);
keybd_event(VK_MENU, 0x38, KEYEVENTF_KEYUP, 0);

setherith 0 Newbie Poster

Just what I was looking for. Cheers!

jamesysco 0 Newbie Poster

Nice one :) the "system" function...who'd have thought it :) Thanks!

pwnedu46 0 Newbie Poster

To get all the system() commands (WINDOWS ONLY!), open up the command prompt (start>accessories>Command Prompt), and type "help" (without the quotes). For help on a specific command, type "help <command name>" (again, no quotes).

shirish7151 -4 Newbie Poster
#include<conio.h>
#include<iostream>
#include<dos.h>
int main() {
textbackground(BLUE);
textcolor(YELLOW);
std::cout<<"Yellow text in a blue console application";
std::cin.get();
return 0;
}
WaltP commented: Worthless in today's world -4
Be a part of the DaniWeb community

We're a friendly, industry-focused community of 1.21 million developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.