Programovanie v jazyku C - Farby textu
Dnes si ukážeme, ako si "vyzdobiť" našej aplikácii farbami textov.
Čo budeme potrebovať?
Určite nejakú knižnicu a práve preto si includneme hlavičkový súbor windows.h.
#include <windows.h>
Urobíme si funkciu farby.
void barvy(void);
Ďalej už k tvoreniu samotnej funkcie. Ako som už hovoril, musíme mať naincludovaný hlavičkový súbor windows.h. Ukážka funkcie .:
void barvy(void) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY | FOREGROUND_GREEN); }
FOREGROUND_INTENSITY je vlastne také zosvetlenie, FOREGROUND_GREEN je samozrejme farba zelená. Teraz bude farba výrazne zelená skoro ako v matrixe. ^^ Ak FG intensity dáme preč vznikne nám farba tmavo zelená.
void barvy(void) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN); // tmavě zelená }
A takto idú miešať rôzne farby napríklad .:
void barvy(void) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE); // bílá }
void barvy(void) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0); // černá }
A do kódu budeme písať už len farby () ;. Tiež môžeme dať všetky farby do switche a tým získať funkciu s premennou a nemusíme na každú farbu písať novú funkciu.
void barvy(int); void barvy(int barvy) { switch(barvy) { case 1: SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0);//černá break; case 2: SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE); // bílá break; } }
Teraz už môžeme písať do kódu nasledovne .:
barvy(1); printf("black"); barvy(2); printf("white");
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami
Stiahnuté 403x (1.38 kB)
Aplikácia je vrátane zdrojových kódov v jazyku C