Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

15/05/2010 #1


Color de letra en C++
Buenas noches!
Estoy aprendiendo a programar en C++, uso el compilador (Borland C++ 5.02) y arme un código simple para probar.
El código anda pero ahora quiero cambiarle el color a el primer menú por ejemplo y no entiendo como.
Googleando encontré este comando: " textcolor(RED); ", pero no entiendo donde debo ponerlo.

Dejo mi código a ver si alguien me puede avivar, gracias de ante mano.



Código:
#include <iostream.h>
#include <conio.h>


int numero;
float lado;
float base;
float altura;
float superficie;
float termino;
int num;
float diam;
float resul;
float diametro;
float radio;

main()

{

cout<< "Programa para calcular areas\n ";

cout<< "Elija el area el cual desee calcular: \n\n";

cout<< " 1- Area del cuadrado \n";
cout<< " 2- Area del rectangulo \n";
cout<< " 3- Area del triangulo \n";
cout<< " 4- Area del circulo \n\n";


cin>> numero;

	switch(numero){

   	case 1:
      	cout<< "Introduzca el valor del lado: ";
         cin>> lado;
         lado = lado*lado;
         cout<< "La superficie del cuadrado es: "<<lado;
      break;

      case 2:
      	cout<< "Introdusca el valor de la base del rectangulo: ";
         cin>> base;
         cout<< "Introdusca el valor de la altura del rectangulo: ";
         cin>> altura;
         superficie = base*altura;
         cout<< "La superficie del rectangulo es: "<<superficie;
      break;

       case 3:
      	cout<< "Introdusca el valor de la base del triangulo: ";
         cin>> base;
         cout<< "Introdusca el valor de la altura del triangulo: ";
         cin>> altura;
         superficie = base*altura;
         termino = superficie/2;
         cout<< "La superficie del triangulo es: "<<termino;
      break;

      case 4:
      	cout<< "Elija una de las siguientes opciones: \n\n";
			cout<< " 1- Calculo de area a partir del diametro \n";
			cout<< " 2- Calculo de area a partir del radio \n\n";

  			cin>> num;

         	switch(num){
            	case 1:
               	cout<< "Introdusca el valor del diametro: ";
                  cin >> diametro;
                  diam = diametro/2;
                  resul = 3.14*diam;
                  cout<< "El area del circulo es: "<<resul;
               break;

               case 2:
               	cout<< "Introdusca el valor del radio: ";
               	cin >> radio;
               	resul = 3.14*radio;
               	cout<< "El area del circulo es: "<<resul;
              	break;
              	default:
                         cout<<"No existe la opcion especificada";

               }
      break;

   default:
      	cout<< "No existe la opcion especificada.";
     	}


getch();

}
18/05/2010 #2

Avatar de tecnogirl

Respuesta: Color de letra en C++
FeeeR dijo: Ver Mensaje
...Dejo mi código a ver si alguien me puede avivar, gracias ...
Código:
 
#include <iostream.h>
#include <conio.h>
 
int numero;
float lado;
float base;
float altura;
float superficie;
float termino;
int num;
float diam;
float resul;
float diametro;
float radio;
 
main() 
{
 
cout<< "Programa para calcular areas\n ";
cout<< "Elija el area el cual desee calcular: \n\n";
 
textcolor(RED) ;
 
cout<< " 1- Area del cuadrado \n";
cout<< " 2- Area del rectangulo \n";
cout<< " 3- Area del triangulo \n";
cout<< " 4- Area del circulo \n\n";
 
textcolor(YELLOW) ;
 
cin>> numero;
 
    switch(numero){
 
       case 1:
          cout<< "Introduzca el valor del lado: ";
         cin>> lado;
         lado = lado*lado;
         cout<< "La superficie del cuadrado es: "<<lado;
      break;
 
      case 2:
          cout<< "Introdusca el valor de la base del rectangulo: ";
         cin>> base;
         cout<< "Introdusca el valor de la altura del rectangulo: ";
         cin>> altura;
         superficie = base*altura;
         cout<< "La superficie del rectangulo es: "<<superficie;
      break;
 
       case 3:
          cout<< "Introdusca el valor de la base del triangulo: ";
         cin>> base;
         cout<< "Introdusca el valor de la altura del triangulo: ";
         cin>> altura;
         superficie = base*altura;
         termino = superficie/2;
         cout<< "La superficie del triangulo es: "<<termino;
      break;
 
      case 4:
          cout<< "Elija una de las siguientes opciones: \n\n";
            cout<< " 1- Calculo de area a partir del diametro \n";
            cout<< " 2- Calculo de area a partir del radio \n\n";
 
              cin>> num;
 
             switch(num){
                case 1:
                   cout<< "Introdusca el valor del diametro: ";
                  cin >> diametro;
                  diam = diametro/2;
                  resul = 3.14*diam;
                  cout<< "El area del circulo es: "<<resul;
               break;
 
               case 2:
                   cout<< "Introdusca el valor del radio: ";
                   cin >> radio;
                   resul = 3.14*radio;
                   cout<< "El area del circulo es: "<<resul;
                  break;
                  default:
                         cout<<"No existe la opcion especificada";
 
               }
      break;
 
   default:
          textcolor(WHITE) ;
          cout<< "No existe la opcion especificada.";
         }
 
 
getch();
 
}
Feer: Prueba las instrucciones (en color magenta) que he insertado en el codigo para que veas el efecto. Comenta los resultados.
18/05/2010 #3


Respuesta: Color de letra en C++
Tecnogirl:
Agregué las instrucciones que me mandastes pero sigo viendolo en color negro.
Debo agregar una libreria en especial?
Porque probe con dos que encontre pero igual sigue sin funcionar:S
18/05/2010 #4
Excluido


Respuesta: Color de letra en C++
Tecnogirl, esa funcion es para usar con el fprint... o es para el cin y cout tambien?

Nunca me meti con ese detalle...
20/05/2010 #5

Avatar de tecnogirl

Respuesta: Color de letra en C++
Parece que no se llevan bien...

http://www.programacionenc.net/modul...ewtopic&p=3719
aqui algunos ejemplos para ver si funcionan

http://www.linuxquestions.org/questi...r-in-c-172930/

http://www.daniweb.com/code/snippet216345.html
Ejemplo para C++ y Windows API.

y efectivamente, con fprinf(), cprintf() funciona el cambio de color.

Aqui un ejemplo para probar el cambio de color con cout:
http://es.answers.yahoo.com/question...3061139AAZobqt

Saludos
20/05/2010 #6


Respuesta: Color de letra en C++
Ahí anduvo el tema de cambiar los colores, muchas gracias Tecnogirl sinceramente busque por todos lados pero no encontraba la manera correcta!
Ahora solo me queda encontrar los valores y que color es cada uno y como hacer para volver al color de letra que YO quiero y de esa manera lograr otorgarle color solo a los títulos!


Código:
Código:
/********************************************************
*                                                       *
*   Librerias utilizadas para resolver el programa      *
*                                 							  *
********************************************************/

#include <iostream.h>
#include <conio.h>
#include <stdlib.h>

/********************************************************
*                                                       *
*        Declaracion de variables globales              *
*                                 							  *
********************************************************/

int numero;
float lado;
float base;
float altura;
float superficie;
float termino;
int num;
float diam;
float resul;
float diametro;
float radio;

/********************************************************
*                                                       *
*         Declaracion de otras funciones                *
*                                 							  *
********************************************************/





/********************************************************
*                                                       *
*                 Programa principal                    *
*                                 							  *
********************************************************/

main()

{

system("color 3f");

cout<< "Elija el area el cual desee calcular: \n\n";
cout<< " 1- Area del cuadrado \n";
cout<< " 2- Area del rectangulo \n";
cout<< " 3- Area del triangulo \n";
cout<< " 4- Area del circulo \n\n";


cin>> numero;

system("cls");

	switch(numero){

   	case 1:
      	cout<< "Introduzca el valor del lado: ";
         cin>> lado;
         lado = lado*lado;
         cout<< "La superficie del cuadrado es: "<<lado;
      break;

      case 2:
      	cout<< "Introdusca el valor de la base del rectangulo: ";
         cin>> base;
         cout<< "Introdusca el valor de la altura del rectangulo: ";
         cin>> altura;
         superficie = base*altura;
         cout<< "La superficie del rectangulo es: "<<superficie;
      break;

       case 3:
      	cout<< "Introdusca el valor de la base del triangulo: ";
         cin>> base;
         cout<< "Introdusca el valor de la altura del triangulo: ";
         cin>> altura;
         superficie = base*altura;
         termino = superficie/2;
         cout<< "La superficie del triangulo es: "<<termino;
      break;

      case 4:
      	cout<< "Elija una de las siguientes opciones: \n\n";
			cout<< " 1- Calculo de area a partir del diametro \n";
			cout<< " 2- Calculo de area a partir del radio \n\n";

  			cin>> num;

         	switch(num){
            	case 1:
               	cout<< "Introdusca el valor del diametro: ";
                  cin >> diametro;
                  diam = diametro/2;
                  resul = 3.14*diam;
                  cout<< "El area del circulo es: "<<resul;
               break;

               case 2:
               	cout<< "Introdusca el valor del radio: ";
               	cin >> radio;
               	resul = 3.14*radio;
               	cout<< "El area del circulo es: "<<resul;
              	break;
              	default: 
                         cout<<"No existe la opcion especificada";

               }
      break;

   default:
      	cout<< "No existe la opcion especificada.";
     	}


getch();

}
20/05/2010 #7
Excluido


Respuesta: Color de letra en C++
Tecnogirl, recuerdas cual es la paleta que se usa ansi-C? es la paleta vga de 16 colores o 256?
Ella es la master en estos temas...
21/05/2010 #8

Avatar de tecnogirl

Respuesta: Color de letra en C++
FeeR: La clave es la instruccion system() para cambiar el color y como dices, ahora es encontrar la combinacion de parametros con los que se invoca la funcion para obtener el efecto que deseas. En una de las referencias que te deje hablan de eso.

Antiworldx: Creo que depende del modo de video que se active en cada caso ?!?!
Yo trabaje algunos programas en baja resolucion (CGA 4), pero principalmente en VGA 16. En VGA256 o mayor no lo he podido hacer por limitantes de la tarjeta de video.

Saludos.
21/05/2010 #9
Excluido


Respuesta: Color de letra en C++
je, bien dije que es buena en esto... la idea es que si puede meter el codigo de 16 colores, es suficiente para lo que desea... Yo trate de buscarla, pero no di con ella facilmente... que onda, que lo busque?
21/05/2010 #10


Respuesta: Color de letra en C++
Dejo los colores de fondo por si a alguien le hace falta.


//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
21/05/2010 #11
Excluido


Respuesta: Color de letra en C++
entonces siempre encontraste la paleta!
21/05/2010 #12


Respuesta: Color de letra en C++
Alguno sabe la forma de hacer una linea de cada color?
Yo pongo todo el código pero me convierte todo el código a ese color y si agrego otro system todo lo que escribo en un color se convierte al nuevo :S
21/05/2010 #13

Avatar de Dr. Zoidberg

Respuesta: Color de letra en C++
FeeeR dijo: Ver Mensaje
Alguno sabe la forma de hacer una linea de cada color?
Yo pongo todo el código pero me convierte todo el código a ese color y si agrego otro system todo lo que escribo en un color se convierte al nuevo :S
Eso es por que lo que estás usando no es lo correcto. El comando system que estás enviando usa el entorno del sistema operativo para cambiar los colores y eso, para que salga bien, es un soberano despelote.

Si la conio.h no te soporta los streams del C++, cosa que es probable por que en C se hace de forma diferente Y NUNCA HAY QUE MEZCLAR AMBAS FORMAS DE ACCESO A LA CONSOLA, entonces vas a tener que manejar vos la memoria de video, pero no se que tan posible sea hacerlo en un consola de Windows...

La otra alternativa es buscar alguna biblioteca que emule las funciones de gestión de colores pero en C++.
22/05/2010 #14


Respuesta: Color de letra en C++
Entonces me convendría seguir trabajando con estructuras y cuando este bien familiarizado y termine el año en el colegio (donde me enseñan c++) pasar a c...
Muchas gracias a Tecnogirl y a ezevalla por las ayudas, muchas gracias.
22/05/2010 #15

Avatar de Dr. Zoidberg

Respuesta: Color de letra en C++
FeeeR dijo: Ver Mensaje
Entonces me convendría seguir trabajando con estructuras y cuando este bien familiarizado y termine el año en el colegio (donde me enseñan c++) pasar a c...
No se...lo que sucede es que siempre se enseña C ANSI, y una vez que tengas claro el paradigma y las estructuras/técnicas de programación, recién se enseña C++.
Si con vos han empezado al revés...estamos MUY mal...

FeeeR dijo: Ver Mensaje
Muchas gracias a Tecnogirl y a ezevalla por las ayudas, muchas gracias.
En lo que a mi concierne, de nada!...
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.