Memberikan Warna Text dan Background pada Bahasa C/C++

Posted: June 3, 2011 in Bahasa C++

Hallo kawan-kawan programmer semuanya… Apa kabar semuanya..?? Semoga baik-baik aja yah… hehehe…
Yups, langsung aja ah ke topik pembahasan… Kali ini saya telah membuat topik baru dengan judul “Warna Text dan Background pada Bahasa C/C++”. Maksud saya membuat topik baru ini adalah untuk sharing ilmu tentang pemrograman C/C++ khususnya tentang bagaimana cara kita untuk melakukan manipulasi warna terhadap teks dan background pada console program kita. Oke, untuk melakukannya pertama-tama kita perlu untuk menyertakan header file windows.h :

#include <windows.h>

Nah, setelah menyertakan header file windows.h diatas, lalu yang kita perlukan lagi adalah code/prosedur untuk melakukan perubahan warna pada teks dan background console program kita yakni sebagai berikut :

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),10);
– Penjelasan :
Angka 10 pada code diatas menyatakan warna teks console, angka tersebut boleh diganti dengan angka berapa saja. Ada 15 macam warna default, dari 0-15 dengan blok berwarna hitam (default) pada bagian belakang teks. Setelah angka 15, maka warna blok belakang teks tidak hitam lagi melainkan berubah menjadi warna lain selain warna hitam (default). Jika kita menggunakan perintah :

system(“CLS”);
setelah code/prosedur untuk perubahan warna teks/background tadi, maka warna blok pada bagian belakang teks akan berubah menjadi warna background console program.

– Berikut merupakan listing source code program untuk merubah warna teks console :

#include <stdio.h>
#include <conio.h>
#include <windows.h>

void SetColor(unsigned short);

int main(int argc, char *argv[]) {
SetColor(10);
puts(“Hello World!”);
getch();
fflush(stdin);
return(0);
}

void SetColor(unsigned short color) {
HANDLE hConsoleOutput = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsoleOutput,color);
}

Bila listing source code program diatas dijalankan, maka hasilnya adalah sebagai berikut :

Oya, untuk merubah warna menjadi warna default lagi (warna putih), caranya adalah dengan mengganti angka pada pemanggilan prosedur ganti warna (SetColor();) dari angka sebelumnya (10) menjadi angka 7. Kenapa angka 7? Jawabannya adalah karena angka 7, menyatakan warna putih standard (default).

Nah, selain code/prosedur ganti warna diatas juga ada syntax yang fungsinya sama seperti code ganti warna diatas yakni sebagai berikut :

system(“COLOR 3B”);
untuk menggunakannya, pertama-tama kita sertakan terlebih dahulu header file stdlib.h. Angka 3 dan huruf B pada argument fungsi diatas merupakan dua angka hexadecimal -> 0-F.
Digit pertama yaitu angka 3, gunanya untuk mengatur warna background pada console program, sedangkan digit kedua yakni huruf B gunanya untuk mengatur warna teks console program. Katakanlah kamu-kamu sekalian sudah men-setting warna teks/background menjadi warna apapun, dan suatu saat kamu ingin merubahnya menjadi warna default atau warna standard, maka solusinya adalah dengan mengganti dua digit pada argument fungsi tersebut dengan angka 0 dan 7. Jadi bentuk nya menjadi seperti ini :

system(“COLOR 07”);
Digit pertama yaitu angka 0, adalah warna hitam (default) untuk background console program. Sedangkan digit kedua yaitu angka 7 adalah warna putih standard untuk teks console program.

NB :
Oya untuk fungsi system(“COLOR …”); hanya bisa untuk merubah warna semua teks secara keseluruhan saja.

– Berikut adalah listing code warna Hexadecimal :

0 = Black
1 = Blue
2 = Green
3 = Aqua
4 = Red
5 = Purple
6 = Yellow
7 = White
8 = Gray
9 = Light Blue

A = Light Green
B = Light Aqua
C = Light Red
D = Light Purple
E = Light Yellow
F = Light White

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s