Cambiar el color del texto de la consola
No es muy común en Windows pero quizás alguna vez quieras cambiar el color del texto/fondo de la consola, por ejemplo, que los mensajes de error salgan de color rojo.
Creo que con el ejemplo es mas que suficiente para saber y entender como hacerlo.
De todas formas, por si alguien anda un poco despistado pongo todos los posibles valores del segundo parámetro de la función que se encarga de cambiar el color. Y acuérdate que para poner varios hay que usar el operador binario OR | .
FOREGROUND_INTENSITY FOREGROUND_RED FOREGROUND_GREEN FOREGROUND_BLUE BACKGROUND_INTENSITY BACKGROUND_RED BACKGROUND_GREEN BACKGROUND_BLUE
#include <windows.h> HANDLE hstdout; void write(const char* message) { DWORD t; WriteConsole(hstdout, (const void*)message, lstrlen(message), &t,NULL); } int main() { hstdout = GetStdHandle(STD_OUTPUT_HANDLE); write("\n\n"); SetConsoleTextAttribute(hstdout, FOREGROUND_INTENSITY | FOREGROUND_RED | BACKGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE ); for (int i = 0; i< 40; i++) write(" "); write("\n davidxl.blogspot.com \n"); for (int i = 0; i< 40; i++) write(" "); SetConsoleTextAttribute(hstdout,FOREGROUND_INTENSITY); write("\n\n"); for (int i = 0; i<256; i++) { SetConsoleTextAttribute(hstdout,i); write("?"); } SetConsoleTextAttribute(hstdout,FOREGROUND_INTENSITY); return 0; }
Comentarios
Publicar un comentario