Dari namanya saja kita semua tau fungsi dari sebuah Color yaitu berfungsi untuk memanipulasi warna. Terdapat 3 warna dasar Red(merah), Green(Hijau), dan Blue(biru) atau yang lebih dikenal dengan singkatan RGB. Dari masing masing warna tersebut memiliki type data Byte(255), jadi Red(255), Green(255) dan Blue(255) sehingga memiliki total warna 255x255x255 = 16.581.375 warna. Selain RGB terdapat model CMYK(Cyan, Magenta, Yellow, and Key"black") dan CMYB(lebih dikenal dengan MYB "gene"). Berikut contoh perbedaan RGB Spectrum dan CMYK Spectrum.
Gambar 24.1
Disini kita tidak membahas CMYK dan MYB, kita akan membahas RGB. Dikarenakan RGB memiliki 16.581.375 warna, maka RGB dapat menghasilkan warna CMYK.
Contoh Soal
Buatlah project dengan nama cs_13color atau vb_13color, masukan 2 object Button, 1 object Text, dan 1 object Timer. seperti gambar 24.2 dibawah ini.
Gambar 24.2
Atur properties sebagai berikut.
Object | Properties | Value |
button1 | (Name) | btnStart |
Teks | Start | |
button2 | (Name) | btnStop |
Teks | Stop | |
timer1 | Enabled | False |
Interval | 1 |
Sebelum mengetikan code ditiap masing masing object, kita deklarasikan terlebih dahulu variable untuk warna diluar object tujuannya agar tidak terubah atau terganggu saat kita jalan. Ketikan code berikut.
//C# byte Red = 0; byte Gren = 0; byte Blue = 0; byte jangka = 5;Letakan code dibawah public partial class Form1 : Form seperti gambar 24.3 dibawah ini
Gambar 24.3
'VB Dim Red As Byte = 0 Dim Green As Byte = 0 Dim Blue As Byte = 0 Dim jangka As Byte = 5Letakan code tersebut dibawah Public Class Form1 seperti gambar 24.4 dibawah ini.
Gambar 24.4
Setelah mendeklarasikan, klik 2x button Start dan button Stop serta Timer1, kemudian ketikan code berikut.
//C# private void btnStart_Click(object sender, EventArgs e){ timer1.Enabled = true; } private void btnStop_Click(object sender, EventArgs e){ timer1.Enabled = false; } private void timer1_Tick(object sender, EventArgs e){ if (Red == 255){ timer1.Enabled = false; } else if (Gren == 255){ Red += jangka; Gren = 0; } else if (Blue == 255){ Gren += jangka; Blue = 0; } else{ Blue += jangka; } this.BackColor = Color.FromArgb(Red, Gren, Blue); this.Text = "R:" + Red + "-" + "G:" + Gren + "-" + "B:" + Blue + " = " + this.BackColor; textBox1.Text = Text; }
'VB Private Sub btnStart_Click(sender As Object, e As EventArgs) Handles btnStart.Click Timer1.Enabled = true End Sub Private Sub btnStop_Click(sender As Object, e As EventArgs) Handles btnStop.Click Timer1.Enabled = false End Sub Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick if Red = 255 Then timer1.Enabled = false ElseIf Green = 255 Then Red += jangka Green = 0 ElseIf Blue = 255 then Green += jangka Blue = 0 Else Blue += jangka Me.BackColor = Color.FromArgb(Red, Green, Blue) Me.Text = "R:" & Red & "-" & "G:" & Green & "-" & "B:" & Blue & " = " & Me.BackColor.ToString textBox1.Text = Text End If End Sub
Kalau kita perhatikan nilai dari variable jangka adalah 5, bertujuan untuk mempercepat saja. anda bisa mengubah nilai jangka menjadi 1(satu) sehingga murni 16juta warna yang terlihat, tetapi membutuhkan waktu yang cukup lama.
Sekarang kita coba jalankan program kemudian tekan button Start untuk memulai. Jika ingin berhenti tekan button Stop. Hasilnya seperti Gambar 24.5 dibawah ini.
Sekarang kita coba jalankan program kemudian tekan button Start untuk memulai. Jika ingin berhenti tekan button Stop. Hasilnya seperti Gambar 24.5 dibawah ini.
Gambar 24.5
Untuk membahas ColorPicker(mengambil warna dari sebuah gambar) akan kita bahas pada tutorial yang akan mendatang. Sampai disini sample dari Color, selanjutnya kita akan membahas Password Char.
Password: csvb2015.blogspot.co.id
Tidak ada komentar :
Posting Komentar