Tip & Trik Cek Direktori

Memeriksa keberadaan suatu folder di dalam komputer bisa kita lakukan dengan fasilitas search yang disediakan oleh sistem operasi Windows. Namun kita juga dapat membuat program untuk mencari folder di dalam drive.

Berikut kode untuk mencari folder "C:Folder" ada. Anda dapat mengubahnya dengan mencari nama folder pada sebuah teks boks atau kode di jalankan saat kita memencet suatu tombol. Berkreasilah!

Private Sub Form_Load()
Const ATTR_DIRECTORY = 16
If Dir$("C:Folder", ATTR_DIRECTORY) <> "" Then
MsgBox "Direktori ada!", vbInformation, "Ada"
Else

MsgBox "Direktori tidak ada!", vbCritical, "Tidak Ada"
End If
End Sub

Tip & Trik Progress Bar Gradasi Warna

Kalau progress bar yang biasa berwarna mengikuti theme dari Windows, kali ini ada trik untuk membuat progress bar yang berwarna gradasi.Tempatkan sebuah command button dan sebuah label dengan caption biarkan kosong.
Private Sub Command1_Click()
Me.Caption = "Sedang Proses. Silakan tunggu..."
x = Me.ScaleLeft + 200
y = Me.ScaleTop + 500
r = 0
g = 0
B = 0
redgrad = 200 / 1700
greengrad = (70 / 1700)
bluegrad = (125 / 1700)
newcolor = &H8000000D
Me.Line (x - 15, y - 15)-(x + 2515, y + 210), black, B
stopl = True
For i = 0 To 2500
Label1.Caption = Int((i / 2500 * 100)) & " % Compeleted"
Label1.Refresh
newcolor = RGB(240 + redgrad * i, 120 + greengrad * i, 120 + redgrad * i)
Me.Line (x, y)-(x, y + 200), newcolor
x = x + 1
Next i
Me.Caption = "Progress Compeleted"
End Sub

Tip & Trik Background Form Gradasi Warna

Kadang kita jenuh melihat warna form hanya itu-itu saja.Memang background sebuah form bisa disisipi dengan gambar, namun dengan sedikit koding, warna background sebuah form dapat menjadi sebuah gradasi yang cantik.

Private Sub Form_Load()

Me.Autoredraw = True
For y = 0 to ScaleHeight
Line(1,y)-(ScaleWidth,y),RGB(200,150,255-(y*255)\ScaleHeight)
next y

end sub

Tip & Trik Membuat Form Ellips

Kalau biasanya kita membuat sebuah form dalam visual basic berbentuk kotak, berikut adalah sebuah tip / trik membuat form berbentuk elips.
Private Declare Function CreateEllipticRgn Lib "gdi32"(ByVal X1 as Long, ByVal Y1 as Long, ByVal X2 as Long, ByVal Y2 as Long) As Long

Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd as Long, ByVal hRgn as Long, ByVal bRedraw as Long) as Long

Private Sub Form_Load()
Dim lngRegion as Long
Dim lngReturn as Long
Dim lngFormWidth as Long
Dim lngFormHeight as Long

lngFormWidth = Me.Width / Screen.TwipsPerPixelX
lngFormHeight = Me.Height / Screen.TwipsPerPixelY
lngRegion createellipticrgn(0,0,lngformwidth,lngformheight)
lngreturn=setwindowrgn(me.hwnd,lngregion,true)
end sub

vbdesktop - Ubah Warna Latar Form

Setelah berlatih meng-inputkan dan mengeluarkan inputan, sekarang kita berlatih mengubah warna form dan memberi efek pada huruf (Bold & Italic). Berikut resepnya.

Buatlah sebuah Project dan tambahkan sebuah label, sebuah frame, 3 buah checkbox, 5 buah option box (di dalam frame) dan 3 buah command button kemudian masukkan kode berikut ini pada jendela Code (F7). File latihan dapat di download disini.

Private Sub biasa_Click()
Check2.Value = 0
Check1.Value = 0
Check3.Value = 1
Label1.FontBold = False
Label1.FontItalic = False
End Sub

Private Sub biru_Click()
Me.BackColor = vbBlue
End Sub

Private Sub bold_Click()
If Check1.Value = 1 And Label1.FontBold = True Then
Check1.Value = 0
Check3.Value = 0
Label1.FontBold = False
ElseIf Check1.Value = 0 And Label1.FontBold = False Then
Check1.Value = 1
Check3.Value = 0
Label1.FontBold = True
End If
End Sub

Private Sub hijau_Click()
Me.BackColor = vbGreen
End Sub

Private Sub hitam_Click()
Me.BackColor = vbBlack
End Sub

Private Sub italic_Click()
If Check2.Value = 1 And Label1.FontItalic = True Then
Check2.Value = 0
Check3.Value = 0
Label1.FontItalic = False
ElseIf Check2.Value = 0 And Label1.FontItalic = False Then
Check2.Value = 1
Check3.Value = 0
Label1.FontItalic = True
End If
End Sub

Private Sub kuning_Click()
Me.BackColor = vbYellow
End Sub

Private Sub merah_Click()
Me.BackColor = vbRed
End Sub

Property kontrol
No Obyek Properti Nilai
1 Command1 Caption &Bold
Font Bold
2 Command2 Caption &Italic
Font Italic
3 Command3 Caption B&iasa
4 Label1 Caption vbdesktop.blogspot.com
BackColor &H00FFFFFF&
BorderStyle 1-Fixed Single
5 Check1 Caption Bold
Font Bold
Enabled False
6 Check2 Caption Italic
Font Italic
Enabled False
7 Check3 Caption Biasa
Enabled False
8 Option1 (Name) merah
Caption Merah
9 Option2 (Name) kuning
Caption Kuning
10 Option3 (Name) hijau
Caption Hijau
11 Option4 (Name) biru
Caption Biru
12 Option5 (Name) hitam
Caption Hitam

vbdesktop - Input Output Teks

Setelah memahami dan mempraktekkan tentang 3 bab yang terdahulu (penulisan program, kontrol program, perulangan) sekarang saatnya kita belajar meng-inputkan sesuatu dan melihat hasilnya (output). Berikut resepnya.

Buatlah sebuah Project dan tambahkan 2 textbox, sebuah frame dan 4 buah label (2 di dalam frame) serta 2 buah command button kemudian masukkan kode berikut ini pada jendela Code (F7). File latihan dapat di download disini.

Private Sub Command1_Click()
Label3.Caption = Text1.Text
Label4.Caption = Text2.Text
End Sub

Private Sub Command2_Click()
Label3.Caption = "
"
Label4.Caption = "
"
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
End Sub

Property kontrol
No | Obyek | Properti | Nilai
1 |Command1 | Caption | &Tampilkan
2 |Command2 | Caption |&Ulangi
3 |Label3 | Caption |

4 |Label4 | Caption |

5 |Text1 | Text | [kosongi bagian ini]
6 |Text2 | Text | [kosongi bagian ini]

Procedure & Function

Seringkali kita menuliskan beberapa kode yang berulangkali kita gunakan, dan untuk menghemat penulisan tersebut kita bisa menggunakan sebuah/beberapa prosedur dan atau fungsi yang memang disediakan oleh Visual Basic. Berikut penjelasannya, semoga membantu.

Prosedur (Procedure)

Dalam kenyataan seringkali program yang harus ditulis cukup panjang, sehingga kesalahan yang mungkin dibuat oleh seorang programmer semakin besar. Untuk mengatasi masalah tersebut dapat dilakukan dengan memecah program tersebut menjadi bagian-bagian kecil (rutin) tetapi tetap logis. Rutin-rutin kecil tersebut akan membuat penelusuran dan perawatan program menjadi lebih mudah dan terstruktur. Rutin-rutin kecil tersebut sering disebut dengan nama prosedur.
Dalam Visual Basic terdapat 2 macam prosedur yaitu :

a.Prosedur umum (general purpose procedure) merupakan prosedur yang ditemukan di dalam daftar Drop Down pada jendela kode.
b.Prosedur Kejadian (Event procedure), prosedur yang berisi kode yang dijalankan ketika suatu kejadian dari kontrol di bangkitkan.

Sedangkan prosedur-prosedur yang ditambahkan dalam sebuah program tersebut disebut subprogram. Ada 2 jenis subprogram dalam Visual Basic yaitu prosedur subrutin (subroutine procedures) dan prosedur fungsi (function procedures).

* Subrutin
Subrutin merupakan prosedur umum (general porpuse procedure) yang ditulis dan ditambahkan dalam program. Format penulisan sebuah subrutin adalah sebagai berikut.

Sub nama_subRutin [(argumen)]
.
.
End Sub


Subrutin biasanya dideklarasikan pada baris paling akhir dari sebuah halaman kode.
Contoh :

Sub Pangkat()
‘ Inisialisasi varibel
Dim Bilangan as Integer

‘mendefinisikan nilai variabel
Bilangan = txtTotal.Text

lblBilangan.Caption = Bilangan * Bilangan
End Sub


Sedangkan untuk memanggil sebuah subrutin digunakan format sebagai berikut :

[Call] SubName [(Argumen list)]


Untuk memanggil subrutin dari contoh diatas dapat digunakan kode sebagai berikut:

Call Pangkat()

atau

Pangkat


Untuk memanggil sebuah subrutin dapat digunakan perintah Call diikuti dengan nama subrutin diikuti dan tanda kurung atau langsung memanggil nama subrutin saja.

* Modul (Module)
Penulisan sebuah modul dapat dilakukan pada sebuah file berekstensi .Bas. File tersebut dapat dibuat melalui menu Project -> Add Module. Secara default Visual Basic memberikan nama Module1. Selajutnya subrutin dapat ditulis pada module tersebut. Subrutin tersebut dapat dipanggil kapan saja dari aplikasi yang sama dengan format sebagai berikut:

[nama_module.]nama_subrutin

Module1.Pangkat

atau

Pangkat

Pemanggilan dapat dilakukan dengan menyebut nama module terlebih dahulu diikuti dengan tanda titik kemudian nama subrutin atau langsung nama subrutin.

* Fungsi (Function)
Subrutin dan Fungsi sebenarnya mirip yaitu prosedur umum (general purpose procedure) yang ditulis dan ditambahkan dalam program. Bedanya Fungsi mengembalikan nilai sedangkan Subrutin tidak. Format penulisan sebuah Fungsi adalah sebagai berikut.

Function nama_Fungsi [(argumen)] as [ReturnValType]
.
.
End Function

Function Pangkat()
‘ Inisialisasi varibel
Dim Bilangan as Integer

‘mendefinisikan nilai variabel
Bilangan = txtBilangan.Text

Pangkat = Bilangan * Bilangan
End Function


Untuk memanggil suatu fungsi dapat digunakan format sebagai berikut:

ReturnVal = FunctionName [(Argumen list)]


ReturnVal – merupakan nilai pengembalian (return value).

* Argumen-argumen
Argumen merupakan data yang dilewatkan pada sebuah subrutin atau fungsi. Argumen ini digunakan sebagai data untuk melakukan pekerjaan berkaitan dengan subrutin atau fungsi yang bersangkutan.

Function Pangkat(Bilangan as Integer)
Pangkat = Bilangan * Bilangan
End Function


Pada contoh di atas merupakan fungsi TotalPembelian diatas yang dimodifikasi. Total tidak lagi diambil dari nilai textbox (txtBilangan), melainkan dikirim melalui suatu argumen. Argumen yang dikirimkan melalui suatu subrutin atau fungsi dapat digunakan langsung seperti sebuah variabel.

Sumber : ITS - Budianto

About the author

Lahir pada 11 Oktober 1986, penulis menghabiskan masa remaja di kota Jogja.Setelah lulus dari SMAN 1 Sewon Bantul tahun 2005, penulis melanjutkan studi di jurusan Teknik Informatika Universitas Ahmad Dahlan Yogyakarta hingga sekarang.Penulis mengenal Visual Basic pada waktu duduk di bangku SMA.Walaupun masih dangkal di dalam pemrograman menggunakan Visual Basic,namun penulis berharap ilmunya masih dapat bermanfaat.