Output console yang seluruhnya satu warna menyulitkan pembaca membedakan pesan penting dari teks biasa. Class Console menyediakan properti warna yang mengubah tampilan teks berikutnya di terminal. Bab ini menutup section input-output dengan mempercantik tampilan program kita sekaligus menjaga kebiasaan yang benar saat memakainya.

Mengubah Warna Teks #

Properti Console.ForegroundColor menentukan warna teks yang dicetak setelahnya, dan Console.ResetColor() mengembalikan warna bawaan:

csharp
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("Status: server berjalan normal");
Console.ResetColor();

Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("Status: koneksi terputus");
Console.ResetColor();

Output yang Dihasilkan:

text
Status: server berjalan normal
Status: koneksi terputus

Blok teks di atas tidak dapat memperlihatkan warna: saat program dijalankan di terminal, baris pertama tampil hijau dan baris ketiga tampil merah. Mari kita telaah baris demi baris:

  1. Baris 1 (Console.ForegroundColor = ConsoleColor.Green;): Properti warna menerima nilai enum ConsoleColor; penugasan ini berlaku untuk semua teks yang dicetak setelahnya.
  2. Baris 2 (Console.WriteLine(...)): Baris status pertama tercetak hijau karena warna masih aktif.
  3. Baris 3 (Console.ResetColor();): Warna bawaan terminal dikembalikan, sehingga pengaturan hijau tidak merambat ke output berikutnya.
  4. Baris 5-7: Pola yang sama diulang dengan ConsoleColor.Red untuk baris status kedua.

Mengubah Warna Latar #

Properti Console.BackgroundColor bekerja dengan cara yang sama, tetapi mewarnai latar di belakang teks:

csharp
Console.BackgroundColor = ConsoleColor.DarkBlue;
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("Konfirmasi: data tersimpan");
Console.ResetColor();

Output yang Dihasilkan:

text
Konfirmasi: data tersimpan

Saat dijalankan di terminal, baris di atas tampil sebagai teks putih di atas latar biru gelap. Kombinasi kedua properti ini lazim dipakai untuk banner atau pesan konfirmasi yang perlu menonjol.

Warna yang Tersedia #

Enum ConsoleColor memuat enam belas anggota; yang paling sering dipakai di antaranya:

AnggotaTampilan
BlackHitam
DarkBlue, BlueBiru gelap dan biru terang
DarkGreen, GreenHijau gelap dan hijau terang
DarkRed, RedMerah gelap dan merah terang
YellowKuning
Cyan, MagentaBiru kehijauan dan ungu kemerahan
Gray, WhiteAbu-abu dan putih

Kebiasaan yang Perlu Dijaga #

Tiga kebiasaan berikut menjaga output tetap rapi ketika warna dipakai:

  • Selalu panggil Console.ResetColor() setelah selesai, karena warna yang aktif berlaku terus sampai diubah.
  • Jangan jadikan warna satu-satunya pembawa informasi; pengguna dengan keterbatasan penglihatan warna atau terminal tanpa dukungan warna tetap perlu membaca pesannya.
  • Untuk membersihkan layar sebelum menampilkan menu baru, panggil Console.Clear(); method ini menghapus seluruh isi terminal dan tidak menghasilkan teks output apa pun.