¡Hola!
Me presento de nuevo, con otro par de dudas que tengo :-S.
- La primera es que quiero ejecutar "X" función al pulsar una combinación de teclas determinada, por ejemplo, guardar un archivo de texto (que lo sé hacer) al pulsar Control + S (esto es lo que no sé hacer :S)
- La segunda, es que me gustaría poder dar color a "X" texto en mi programa, por ejemplo, que si tengo lo siguiente en la consola:
********************************************************
* Nombre: *
* Apellido: *
* Edad: *
********************************************************
Y le quiera aplicar distintos colores (o estilos como negrita, etc), al final me quede así:
********************************************************
* Nombre: *
* Apellido: *
* Edad: *
********************************************************
Bueno, nuevamente gracias por su atención, espero y me puedan ayudar con esta pequeña duda :-[
Saludos ^^
bueno depende para que SO lo quieras hacer.
Lo del color en linux solo tendrias que hacer algo asi:
cout << "\e[31m"; //rojo
cout << "\e[32m"; //verde
cout << "\e[33m"; //amarillo
En windows seria algo asi:
#include <iostream>
#include <windows.h>
using namepsace std;
int main()
{
const WORD colors[] ={ 0x1A, 0x2B, 0x3C, 0x4D, 0x5E, 0x6F,0xA1, 0xB2, 0xC3, 0xD4, xE5, 0xF6};
HANDLE hstdin = GetStdHandle( STD_INPUT_HANDLE );
HANDLE hstdout = GetStdHandle( STD_OUTPUT_HANDLE );
WORD index = 0;
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo( hstdout, &csbi );
SetConsoleTextAttribute( hstdout, 0xEC );
cout << "Presionar tecla.\n";
// Draw pretty colors until the user presses any key
while (WaitForSingleObject( hstdin, 100 ) == WAIT_TIMEOUT)
{
SetConsoleTextAttribute( hstdout, colors[ index ] );
cout << "\t\t\t\t Holaaa \t\t\t\t" << std::endl;
if (++index > sizeof(colors)/sizeof(colors[0]))
index = 0;
}
FlushConsoleInputBuffer( hstdin );
SetConsoleTextAttribute( hstdout, csbi.wAttributes );
return 0;
}
En internet hay mucho.
Lo de las teclas lo mismo.
Usa las APIs o con alguna libreria