Showing posts with label Menguasai Visual Basic. Show all posts
Program Konversi Warna Dengan Visual Basic
By : DG Comic
Anda
tentunya sudah mengenal istilah balok gulung atau Scroll Bar. Kalau Anda
menggunakan perangkat lunak pengolah kata misalnya, maka jika tulisan yang Anda
buat cukup panjang, maka pada bagian kanan jendela pengolah kata tersebut akan
muncul sebuah balok yang dapat Anda naik turunkan untuk mencapai bagian dari
halaman-halaman tertentu yang akan Anda cari. Nah, itulah yang disebut balok
gulung. Di Visual Basic juga dikenal adanya kontrol balok gulung. Hanya saja,
kontrol balok gulung ini bukan merupakan bagian dari suatu jendela tertentu
seperti contoh pengolah kata tadi, melainkan merupakan kontrol yang dapat
berdiri sendiri. Kadangkala ada kontrol tertentu yang memunculkan balok gulung,
tetapi balok gulung tersebut bukan merupakan kontrol balok gulung. Misalnya
Anda membuat suatu listbox yang memiliki daftar cukup panjang, akan tetapi
ukuran dari listbox tersebut agak kecil, maka kontrol listbox tersebut otomatis
akan memunculkan sebuah balok gulung, karena tidak mampu menampung daftar yang
dikandungnya, tetapi balok gulung tersebut bukan kontrol balok gulung.
gambar 1
Perhatikan gambar 1. Pada gambar
tersebut, balok gulung yang muncul pada kontrol listbox bukan merupakan kontrol
balok gulung, tetapi balok gulung tersebut muncul semata-mata karena listbox
tidak mampu menampung seluruh isi yang dikandungnya.
Kontrol balok gulung pada Visual
Basic cukup berguna untuk mengatur atau menunjukkan posisi suatu jangkauan
nilai tertentu. Maksudnya begini, misalnya ada sebuah jangkauan nilai dari 0
sampai dengan 10, maka jika posisi balok terletak di paling kiri berarti
nilainya adalah 0, jika di tengah berarti nilainya adalah 5, jika di paling
kanan maka nilainya adalah 10. Itu jika balok gulungnya horisontal. Jika
vertikal maka dapat berarti jika posisi balok ada di paling bawah berarti
bernilai 0 dan paling atas bernilai 10.
Untuk
menambah pemahaman tentang penggunaan kontrol balok gulung ini, akan diberikan
contoh sebuah program konversi warna.
Program ini ditujukan untuk
membantu menentukan warna berdasarkan angka heksadesimal dalam perancangan
halaman HTML. Memang sekarang ini sudah banyak perangkat lunak yang dapat
merancang halaman HTML secara visual dan dengan perangkat tersebut, warna-warna
yang diinginkan tinggal dipilih dengan mengklik tombol mouse saja. Namun ada kalanya
perancangan halaman HTML harus dilakukan secara teks dengan menuliskan tag-tag
HTMLnya, misalnya untuk perancangan halaman HTML yang menggunakan bahasa skrip
ASP atau PHP. Nah, pada keadaan seperti itu, program ini akan memiliki manfaat.
Sekarang mari kita buat program
ini. Rancanglah form seperti gambar 2. Setelah selesai dengan perancangan form,
ubahlah properti dari beberapa kontrol sebagai berikut:
gambar 2
|
Kontrol
|
Properti
|
Nilai
|
|
Form
|
(Name)
|
frmWarna
|
|
Caption
|
Konversi Warna
|
|
|
Text box 1
|
BackColor
|
&H00000000& (Warna Hitam)
|
|
Text box 2
|
Text
|
00
|
|
Text box 3
|
Text
|
00
|
|
Text box 4
|
Text
|
00
|
|
Label 1
|
Caption
|
Red
|
|
Label 2
|
Caption
|
Green
|
|
Label 3
|
Caption
|
Blue
|
|
HScroll 1
|
LargeChange
|
20
|
|
Max
|
255
|
|
|
Min
|
0
|
|
|
Small Change
|
1
|
|
|
HScroll 2
|
LargeChange
|
20
|
|
Max
|
255
|
|
|
Min
|
0
|
|
|
Small Change
|
1
|
|
|
HScroll 3
|
LargeChange
|
20
|
|
Max
|
255
|
|
|
Min
|
0
|
|
|
SmallChange
|
1
|
|
|
Command button 1
|
Caption
|
E&xit
|
Properti dari balok gulung yang
diubah di atas memiliki pengertian sebagai berikut:
·
LargeChange: perubahan nilai yang terbesar
karena bergesernya balok adalah sebesar 20 angka.
·
Max: nilai maksimum dari balok gulung adalah
255.
·
Min: nilai minimum dari balok gulung adalah 0.
·
SmallChange: perubahan nilai yang terkecil
karena bergesernya balok adalah sebesar 1 angka.
Perubahan nilai tersebut dapat
dicapai dengan cara sebagai berikut:
·
Jika digunakan panah atas/bawah atau kiri/kanan
pada keyboard untuk menggeser balok, ataupun dengan mengklik tanda segitiga di
kanan/kiri kontrol balok gulung, maka yang didapat adalah perubahan nilai yang
terkecil, yaitu 1.
·
Jika digunakan tombol PageUp/PageDown untuk
menggeser balok, maka yang didapat adalah perubahan nilai yang terbesar, yaitu
20.
·
Perubahan nilai adalah bebas jika balok gulung
digeser-geser dengan cara didrag oleh mouse.
Kode pemrograman untuk program di
atas diberikan pada listing 1.
|
Listing 1. Program konversi warna
Private Sub Command1_Click()
End
End Sub
Private Sub HScroll1_Change()
warna 'memanggil
prosedur warna
n =
Hex$(HScroll1.Value)
pj =
Len(n)
If pj = 1
Then
n
= "0" & n
End If
Text2.Text
= n
End Sub
Private Sub HScroll2_Change()
warna 'memanggil
prosedur warna
n =
Hex$(HScroll2.Value)
pj =
Len(n)
If pj = 1
Then
n
= "0" & n
End If
Text3.Text
= n
End Sub
Private Sub HScroll3_Change()
warna 'memanggil
prosedur warna
n =
Hex$(HScroll3.Value)
pj =
Len(n)
If pj = 1
Then
n
= "0" & n
End If
Text4.Text
= n
End Sub
|
Pada kode
program tersebut, terdapat sebuah prosedur buatan sendiri bernama warna. Untuk
menambahkan prosedur tersebut, akan digunakan sebuah modul terpisah. Cara untuk
menambahkan sebuah modul terpisah adalah sebagai berikut:
- Klik
kanan pada project window.
- Pada
menu yang muncul pilih add.
- Pilih
module.
- Jika
muncul kotak dialog, pilih module, lalu klik open.
Setelah Anda melakukan langkah-langkah di atas, akan
muncul sebuah jendela yang mirip dengan jendela di mana kita memasukkan kode
program. Pada jendela tersebut tuliskan kode program seperti tertulis pada
listing 2.
|
Listing 2. Prosedur warna
Public Sub warna()
frmWarna.Text1.BackColor
= RGB(frmWarna.HScroll1.Value, _
frmWarna.HScroll2.Value,
frmWarna.HScroll3.Value)
End Sub
|
Keterangan dari kode program di
atas adalah sebagai berikut:
Prosedur Private Sub
Command1_Click() merupakan prosedur yang digunakan untuk menutup/menghentikan
program.
Prosedur Private Sub
HScroll1_Change(), Private Sub HScroll2_Change(), dan Private Sub
HScroll3_Change() memiliki fungsi yang sama, yaitu jika nilai dari balok gulung
yang bersangkutan berubah (karena digeser), maka prosedur warna akan dipanggil.
Kemudian nilai dari balok geser tersebut dikonversikan menjadi heksadesimal dan
ditampung dalam variabel n. Jika variabel n hanya terdiri dari satu karakter,
maka didepannya akan diberi angka nol. Setelah itu nilai n akan ditampilkan
pada text2, text3, atau text4 sesuai dengan balok gulungnya.
Prosedur warna akan memberi warna
latar belakang text1 sesuai dengan nilai HScroll1, HScroll2, dan HScroll3 yang
diubah ke nilai RGB (Red, Green, Blue).
Running program tersebut adalah
sebagai berikut:
Dengan menggeser-geser balok gulung
yang ada, maka angka-angka pada text box yang bersangkutan akan berubah sesuai
dengan warna yang nampak pada text box warna. Misalnya text box red akan
mempunyai angka 03, green 25, dan blue AB, maka warna yang nampak tersebut akan
memiliki bilangan heksadesimal 0325AB. Bandingkan dengan gambar 3.
gambar 3
Membuat Fungsi Terbilang Dengan Visual Basic
By : DG Comic
Membuat Fungsi Terbilang Dengan Visual Basic 6.0
Fungsi
terbilang adalah fungsi yang melakukan konversi dari angka menjadi teks
terbilangnya, misalnya 123,4567 menjadi seratus dua puluh tiga koma empat lima
enam tujuh.
gambar 1
Buatlah sebuah project baru dengan
template Standard.EXE. Rancanglah sebuah form seperti terlihat pada gambar 1.
Beberapa properti form tersebut harus diberi nilai sebagai berikut:
|
Kontrol
|
Properti
|
Nilai
|
|
Form
|
Caption
|
Terbilang
|
|
TextBox1
|
Name
|
txtAngka
|
|
TextBox2
|
Name
|
txtTerbilang
|
|
|
Multiline
|
True
|
|
CommandButton1
|
Name
|
cmdTerbilang
|
|
|
Caption
|
&Terbilang
|
|
CommandButton2
|
Name
|
cmdExit
|
|
|
Caption
|
E&xit
|
Kemudian tambahkan sebuah modul dengan cara klik kanan pada
Project Explorer dan pada menu yang muncul pilih Add > Module. Bandingkan
dengan gambar 2.
gambar 2
Pada module baru tersebut tambahkan
kode program seperti disajikan pada listing 1.
Kemudian klik ganda tombol Terbilang
dan tambahkan kode program seperti disajikan pada listing 2.
Langkah terakhir, klik ganda tombol
Exit dan tambahkan kode program seperti disajikan pada listing 3.
Hasil eksekusi program tersebut
ditampilkan pada gambar 3. Masukkan suatu angka pada kotak teks Angka, klik
tombol Terbilang, teks terbilang dari angka tersebut akan muncul pada kotak
teks Terbilang.
gambar 3
|
Listing
1. Fungsi terbilang
Public
Function Terbilang(x As Double) As String
Dim tampung As Double
Dim teks As String
Dim bagian As String
Dim i As Integer
Dim tanda As Boolean
Dim letak(5)
letak(1) = "ribu "
letak(2) = "juta "
letak(3) = "milyar "
letak(4) = "trilyun "
If (x = 0) Then
Terbilang = "nol"
Exit Function
End If
If (x < 2000) Then
tanda = True
End If
teks = ""
If (x >= 1E+15) Then
Terbilang = "Nilai terlalu besar"
Exit Function
End If
For i = 4 To 1 Step -1
tampung = Int(x / (10 ^ (3 * i)))
If (tampung > 0) Then
bagian = ratusan(tampung, tanda)
teks = teks & bagian & letak(i)
End If
x = x - tampung * (10 ^ (3 * i))
Next
teks = teks & ratusan(x, False)
Terbilang = teks
End
Function
Function
ratusan(ByVal y As Double, ByVal flag As Boolean) As String
Dim tmp As Double
Dim bilang As String
Dim bag As String
Dim j As Integer
Dim angka(9)
angka(1) = "se"
angka(2) = "dua "
angka(3) = "tiga "
angka(4) = "empat "
angka(5) = "lima "
angka(6) = "enam "
angka(7) = "tujuh "
angka(8) = "delapan "
angka(9) = "sembilan "
Dim posisi(2)
posisi(1) = "puluh "
posisi(2) = "ratus "
bilang = ""
For j = 2 To 1 Step -1
tmp
= Int(y / (10 ^ j))
If (tmp > 0) Then
bag = angka(tmp)
If (j = 1 And tmp = 1) Then
y = y - tmp * 10 ^ j
If (y >= 1) Then
posisi(j) = "belas "
Else
angka(y) = "se"
End If
bilang = bilang & angka(y) &
posisi(j)
ratusan = bilang
Exit Function
Else
bilang = bilang & bag & posisi(j)
End If
End If
y = y - tmp * 10 ^ j
Next
If (flag = False) Then
angka(1) = "satu "
End If
bilang = bilang & angka(y)
ratusan = bilang
End
Function
|
|
Listing
2. Event click pada cmdTerbilang
Private
Sub cmdTerbilang_Click()
Dim angka As Double
Dim teks As String
angka = Val(txtAngka.Text)
teks = Terbilang(angka)
txtTerbilang.Text = teks
End
Sub
|
|
Listing
3. Event click pada cmdExit
Private
Sub cmdExit_Click()
End
End
Sub
|
Membuat Jam Digital Dengan Visual Basic
By : DG Comic
Program untuk membuat jam digital
dengan Visual Basic merupakan program yang relatif sederhana. Hanya diperlukan
sebuah form dan beberapa baris pemrograman saja.
Desainlah form seperti terlihat pada gambar 1. Kontrol timer
dapat diletakkan di mana saja karena tidak akan terlihat pada saat runtime.
Kemudian beberapa kontrol yang ada harus diubah nilai propertinya sesuai dengan
tabel berikut:
|
Kontrol
|
Properti
|
Nilai
|
|
Form
|
BorderStyle
|
1
– Fixed Single
|
|
Caption
|
Jam
Digital
|
|
|
TextBox
|
Name
|
TxtJam
|
|
Text
|
[kosong]
|
|
|
Command
Button
|
Name
|
CmdExit
|
|
Caption
|
E&xit
|
|
|
Timer
|
Interval
|
1000
|
Tambahkan kode program ke dalam form
tersebut seperti diberikan pada listing 1. Pada prinsipnya, pada saat form di
load, teks pada txtJam harus menunjukkan waktu saat itu yang diberikan oleh
objek Time. Kemudian setiap interval yang ditentukan pada kontrol Timer, teks
pada txtJam juga diupdate sesuai dengan waktu saat itu.
Hasil eksekusi program tersebut terlihat pada gambar 2.
|
Listing
3. Membuat Jam Digital
Private
Sub cmdExit_Click()
End
End
Sub
Private
Sub Form_Load()
txtJam.Text = Time
End
Sub
Private
Sub Timer1_Timer()
txtJam.Text = Time
End
Sub
|
Nah, sederhana, bukan?
Aneka Tips Dan Trik Pemrograman Visual Basic
By : DG Comic
Bagian ini akan memberikan aneka tip dan trik pemrograman
yang biasa diterapkan di Visual Basic versi 6.0.
Anda tentu
sudah mengetahui bahwa pada aplikasi tertentu yang menggunakan password, text
box yang digunakan untuk mengisi password selalu memunculkan karakter bintang
(*) jika Anda mengetikkan sesuatu ke dalamnya. Hal ini tentu saja dimaksudkan
agar orang lain tidak dapat membaca karakter sebenarnya yang Anda ketikkan.
Untuk membuat sebuah text box agar mengeluarkan karakter * (atau bahkan
karakter yang lain) caranya sangat mudah, yaitu mengisikan karakter yang Anda
inginkan pada properti PasswordChar kontrol text box. Setelah itu jika Anda
mengetikkan sesuatu ke dalam text box tersebut, maka karakter yang akan muncul
adalah karakter yang Anda masukkan ke dalam properti PasswordChar tersebut.
Seringkali
jika aplikasi Anda dijalankan, letak form aplikasi tersebut pada layar monitor
tidak menetap. Kadang di kiri atas, kadang di tengah, kadang di bawah. Bagi
Anda yang menyukai kerapian, mungkin hal ini akan terasa menjengkelkan. Ada
suatu trik mudah agar form aplikasi tersebut selalu terletak di tengah layar
monitor jika dieksekusi, yaitu dengan mengubah properti StartUpPosition menjadi
2 – CenterScreen, atau klik kanan gambar form pada Form Layout Window, pilih
Startup Position®Center
Screen.
Ukuran Default Kontrol
Untuk
menambahkan sebuah kontrol ke dalam form, Anda menggunakan cara klik dan seret
mouse untuk membentuk kontrol tersebut di dalam form. Jika Anda ingin
menggunakan sebuah kontrol dengan ukuran defaultnya, maka ada cara yang lebih
cepat, yaitu klik ganda ikon kontrol tersebut. Otomatis ke dalam form akan
ditambahkan kontrol tersebut dengan ukuran default. Sedangkan posisinya tentu
saja masih harus diatur secara manual.
Jika Anda
adalah pengguna Visual Basic mulai dari versi-versi awal, Anda tentu tahu bahwa
tampilan IDE (Integrated Development Environment) atau tampilan jendela Visual
Basic 6.0 berbeda dengan versi-versi sebelumnya. Anda dapat mengubah tampilan
IDE Microsoft Visual Basic 6.0 agar menyerupai versi-versi sebelumnya dengan
klik menu Tools®Options.
Pilih tab Advanced, aktifkan check box SDI Development Environment. Keluarlah
dari Visual Basic 6.0, kemudian jalankan lagi. Tampilan IDE Visual Basic 6.0
akan berubah seperti gambar 1.
Selama ini
Anda selalu menggunakan Caption pada Command Button. Anda juga dapat
menambahkan gambar pada Command Button untuk menambah daya tarik aplikasi Anda.
Untuk itu ada beberapa properti yang perlu diubah, yaitu:
|
Nilai
|
|
|
Style
|
2 - Graphical
|
|
Caption
|
[Anda boleh mengosongkan properti ini]
|
|
Picture
|
[Gambar yang hendak ditambahkan pada Command Button]
|
|
DownPicture
|
[Gambar pada Command Button ketika diklik]
|
Contoh:
Buatlah
sebuah form, tambahkan sebuah Command Button dan ubahlah propertinya sebagai
berikut:
|
Nilai
|
|
|
Style
|
2 - Graphical
|
|
Caption
|
[kosong]
|
|
Picture
|
C:\Windows\Cursors\No_l.cur
|
|
DownPicture
|
C:\Windows\Cursors\No_m.cur
|
Untuk
properti Picture dan DownPicture, jika file-file kursor yang diberikan pada
contoh tidak ada pada komputer Anda, Anda boleh menggantinya sendiri dengan
file lain.
Jalankan aplikasi Anda, perhatikan
apa yang terjadi jika Command Button tersebut diklik.
Kadang-kadang
Anda ingin menampilkan sebuah menu dengan klik kanan pada sebuah objek. Menu
seperti inilah yang disebut PopUp Menu. Caranya sangat mudah. Buatlah sebuah
menu dengan menu editor, lalu nonaktifkan pilihan visible yang terdapat pada
kotak dialog menu editor. Yang harus diperhatikan adalah, pilihan visible ini
hanya non aktif untuk menutitle-nya saja, sedangkan untuk setiap menuitem,
pilihan visible ini harus tetap aktif. Kemudian gunakan event mouse down pada
objek yang Anda inginkan untuk menampilkan PopUp Menu, lalu tambahkan sintaks
sebagai berikut:
PopUpMenu menutitle
Ingat,
dengan menggunakan event mouse down, tombol mouse yang diklik bisa ditangkap
dengan mengambil nilai tertentu dari parameter button. Untuk tombol kanan
mouse, nilai parameter button adalah 2.
Contoh:
Buatlah
sebuah form, tambahkan menu dan kontrol Picture Box ke dalamnya. Isi menu dan
gambar terserah Anda. Jangan lupa untuk menonaktifkan check box visible pada
menu editor untuk menutitle-nya. Pada kontrol picture box tambahkan kode
seperti pada listing 1.
|
Listing 1. Event MouseDown pada Picture1
Private Sub Picture1_MouseDown(Button As Integer, Shift As
Integer, X As Single, Y As Single)
If Button = 2 Then
PopupMenu mnuFile
End If
End Sub
|
Jalankan
aplikasi tersebut. Menu akan muncul jika Anda mengklik kanan kontrol Picture
Box.
Untuk
mengedit beberapa kontrol sekaligus, gunakan kombinasi shift+klik atau
ctrl+klik untuk mengaktifkan pilihan terhadap beberapa kontrol.
Sebagai contoh, perhatikan gambar
2. Pada gambar tersebut, ketiga Command Button yang ada pada form terletak
terlalu ke kiri. Untuk memindahkan ketiganya sekaligus ke tengah, pilih ketiga
Command Button tersebut dengan kombinasi shift+klik atau ctrl+klik. Setelah itu
Anda dapat memindahkan ketiga kontrol tersebut sekaligus.
Kadang-kadang
karena sesuatu hal kita tidak dapat menggunakan mouse dalam mengoperasikan
suatu aplikasi, misalnya mouse sedang rusak. Maka terpaksa kita menggunakan
keyboard dalam menjalankan suatu aplikasi. Atau mungkin aplikasi kita adalah
aplikasi yang digunakan di kasir toko yang memang sengaja tidak diberi mouse.
Pada keadaan dimana kita harus menggunakan keyboard, maka untuk berpindah dari
satu kontrol ke kontrol yang lain kita menggunakan tombol tab. Untuk itu di
dalam mendesain suatu form, kita juga perlu mengatur urut-urutan kontrol yang
akan aktif jika tombol tab ditekan. Untuk mengatur urutan tersebut caranya
sangat mudah, yaitu dengan mengatur properti TabIndex setiap kontrol. Kontrol
yang langsung fokus jika aplikasi dijalankan akan memiliki TabIndex 0, kemudian
jika kita menekan tombol tab, maka kontrol berikutnya yang aktif adalah yang
memiliki TabIndex 1, dan seterusnya.
Untuk kasus
tertentu, maka penggunaan tombol tab untuk berpindah dari satu kontrol ke
kontrol lain tidak efisien, dan untuk menggantikan tombol tab diinginkan tombol
enter. Untuk menggantikan tombol tab dengan enter, maka trik yang dapat dipakai
adalah menggunakan event KeyPress. Nilai keyAscii untuk enter adalah 13. Jika
nilai keyAscii 13 ini terpenuhi, maka kontrol berikutnya yang ingin dijadikan
fokus harus dikenai metoda setfocus.
Menambahkan Kontrol Array Pada Saat Run-Time
Umumnya
kita menambahkan kontrol ke dalam form pada saat mendesain form tersebut (pada
saat design time), tetapi Visual Basic juga menyediakan fasilitas untuk
menambah jumlah kontrol array pada saat run-time dengan menggunakan pernyataan
Load.
Contoh:
Buatlah
sebuah form dan tambahkan sebuah Command Button. Ubah properti Indexnya dengan
angka 0.
Ke dalam
Command Button tersebut tambahkan kode program seperti listing 2.
|
Listing 2. Event Click pada Command1
Private Sub Command1_Click(Index As Integer)
Load
Command1(1)
Command1(1).Left
= Command1(0).Left
Command1(1).Top
= Command1(0).Top + Command1(0).Height
Command1(1).Caption
= "Command Baru"
Command1(1).Visible
= True
End Sub
|
Perhatikan
bahwa pada prosedur Command1_Click terdapat parameter Index As Integer yang
harus ditambahkan.
Jalankan aplikasi tersebut. Jika
Command Button diklik, maka otomatis akan ditambahkan sebuah Command Button
baru tepat di bawahnya.
Nah, mudah-mudahan tips dan trik di
atas membantu Anda dalam membuat aplikasi-aplikasi dengan Visual Basic.









