12 January 2009

Mencari TextBox Kosong Dengan Perulangan

Untuk mengetahui textbox sudah diisi atau belum bisa dilakukan dengan beberapa cara, antara lain dengan menggunakan perintah "IF...THEN", namun bila kita menggunakan perintah ini kita diharuskan menulis code program yang cukup banyak, dan itu menjadi tidak efektif.

Ada cara lain yang menurut saya lebih efektif ketimbang kita menggunakan perintah "IF" yaitu dengan memanfaatkan perintah perulangan, perulangan yang saya maksud disini adalah perulangan dengan menggunakan "FOR .... NEXT"

Berikut adalah perintahnya yang saya masukkan ke dalam sebuh presedur:

Private Sub CekTextBoxKosong()
Dim ctrAs Control

For Each ctr In Me.Controls
   If TypeOf ctr Is TextBox Then
      If ctr.Text= vbNullString Then
         MsgBox "Textbox ini kosong"

         ctr.SetFocus

         Exit Sub

      End If

  End If
Next ctr

End Sub


Berikut ini penjelasan ringkas tentang code di atas:

Perulangan dilakukan terhadap variabel ctr dimana ctradalah sebuah kontrol yang terdapat pada form dimana code ini ditulis ( In Me.Controls).

Kemudian jika tipe dari ctr adalah textbox maka proram akan mengecek apakah ctr(TextBox) ada isinya atau tidak, jika masih kosong yang dalam visual basic kita bisa menggunakan vbNullString maka akan muncul kotak pesan dan akan langsung mengeset focus ke textbox yang kosong tersebut dan akan langsung menghentikan prosedur ini dengan perintah Exit Sub.

Dan perulangan akan terus berlanjut dengan adanya perintah Next.

Read more ...

26 December 2008

Berpindah Antar Kontrol Dengan Enter

Secara default untuk berpindah antar kontrol di vb kita bisa menggunakan tombol Tab yang sebelumnya tiap kontrol sudah kita atur properti TabIndex-nya. Namun kita juga bisa melakukannya dengan menggunakan tombol enter dimana kita akan menggunakan fungsi SendKeys.

Untuk menggunakan cara ini kita bisa menempatkan kodenya pada Event KeyPress pada tiap kontrol yang kita inginkan, misalnya pada textbox. Berikut ini adalah contoh kodenya:

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
KeyAscii = 0
End If
End Sub

Pada kode ini kita pastikan terlebih dahulu bahwa pengguna menekan tombol enter dimana tombol enter nilai ASCII-nya adalah 13. Setelah itu kita menggunakan fungsi SendKeys dimana kita mengirimkan nilai dari tombol Tab. Lalu nilai ASCII-nya kita kembalikan lagi menjadi 0.

Read more ...

22 November 2008

Perintah DOS pada Visual Basic 6.0

Terkadang kita ingin menggunakan perintah yang ada pada dos untuk melakukan sebuah kondisi, ni aku bagi caranya gampangnya, hanya beberapa baris aja kok gak panjang :

Sebelumnya siapkan sebuah form dengan satu buah command button, trus ketik code berikut:

Private sub command1_click()

sYourCommand="copy C:/vb.txt D:/vb.txt"
shell "cmd \c " & sYourCommand

End Sub

Dah cuma gitu aja code-nya.
Variabel sYourCommand adalah perintah dos yang ingin kita lakukan, pada code di atas dicontohkan kita akan menyalin file vb.txt pada C: ke D:, perintah ini bisa kita ganti dengan perintah dos yang lainnya.

Pada baris bawahnya kita menggunakan "Shell" yang berfungsi untuk memanggil aplikasi yang ada, disini kita memanggil aplikasi commnad promt, untuk memasukkan perintah dos kita menggunakan tambahan " \c " lalu kita tambahkan string tersebut dengan perintah dos yan telah kita simpan pada variabel sYourCommand.
Read more ...

17 July 2008

Marquee Form Caption

Ini ada sebuah tip menarik untuk mempercantik tampilan aplikasi yang kita buat. Dimana caption dari form yang kita gunakan akan berjalan dari kanan kekiri secara terus menerus.

Jika anda berfikir kode yang digunakan akan ribet dan banyak, maka tidak demikian, kode yang digunakan sangat sederhana karena hanya melibatkan beberapa fungsi dasar saja diantaranya fungsi Left yang digunakian untuk mendapatkan karakter dari sebelah kiri, lau ada fungsi Right yang berfungsi untuk mencari karakter yang dimulai dari sebelah kanan serta fungsi Len yang dipakai untuk mendapatkan panjang karakter.


Kontrol yang digunakan juga menggunakan kontrol standar dari visual basic 6.0 yaitu satu buah kontrol timer yang intervalnya kita set menjadi 100 atau bisa kita ganti sesuai keinginan kita.

Kalo mau mencoba silahkan ketikkan kode berikut:


Private Sub Form_Load()
Form1.Caption = " [ Belajar VB 6.0 ] "
End Sub

Private Sub Timer1_Timer()
a = Left(Form1.Caption, 1)
b = Len(Form1.Caption)
c = Right(Form1.Caption, b - 1)
Form1.Caption = c + a
End Sub



Sederhana kan ???
Read more ...

10 July 2008

Tampilan Warna Warni

Terkadang kita merasa bosan bila melihat aplikasi yang isinya hanya ada dua warna, hitam dan putih, maka kita harus punya cara yang kreatif agar tampilan aplikasi yang kita buat lebih terlihat bervariatif. Salah satu caranya adalah dengan membuat label yang warna tulisan dan background nya berubah-ubah alias warna warni.

Dalam visual basic telah tersedia sebuah fungsi yang bernama RGB singkatan dari RED GREEN BLUE yang berfungsi untuk mengatur intensitas warna merah, hijau dan biru pada suatu objek. Bentuk umum dari fungsi ini adalah RGB(Red As Integer, Green As Integer, Blue As Integer ).

Sebagai contoh kita bisa memasukkan RGB(255,0,0) untuk menampilkan warna merah. Angka 255 pada fungsi tadi dimaksudkan untuk mendapatkan warna merah yang maksimum, bila kita kurangi nilainya maka warna merahnya akan semakin tua. Kita juga bisa membuat gradasi warna yang lain yang kita inginkan.

Untuk membuat sebuah label atau background atau properti warna yang lain pada sebuah kontrol maka kita bisa memanfaatkan statement Randomize (Rnd) yang berfungsi untuk mengacak intensitas warna.
Mari kita coba membuat sebuah aplikasi dengan memanfaatkan fungsi RGB dan statement Rnd. Kontrol yang kita butuhkan adalah sebuah label dan sebuah Timer dengan interval 100. Lalu cobalah ketikkan kode berikut ini dan mainkan programmu. :


Private Sub Timer1_Timer()

Label1.BackColor = RGB(Rnd * 255, Rnd * 255, Rnd * 255)

Label1.ForeColor = RGB(Rnd * 255, Rnd * 255, Rnd * 255)

End Sub

Kalau malas mengetikkan kodenya, bisa diambil contohnya disini. Read more ...

Mencari ASCII Sebuah Tombol

KEYASCII dari suatu tombol penting untuk kita ketahui bila kita sering menggunakan event keypress dari suatu kontrol. Namun untuk dapat menghafal semua ASCII dari tiap tombol pada keyboard lumayan sulit mengingat cukup banyaknya tombol. Lalu bagaimana cara membuat sebuah program aplikasi dari visual basic 6 untuk mengtahui nilai ASCII dari sebuah tombol.

Berikut ini ada sebuah aplikasi sederhana untuk mengetahui nilai ASCII pada tombol keyboard yang kita tekan dengan memanfaatkan event keypress.

Buatlah sebuah project baru dengan menambahkan sebuah kontrol. Kemudian ketikkan kode berikut :


Private Sub Text1_KeyPress(KeyAscii As Integer)

MsgBox "Nilai ASCII dari tombol yang anda tekan adalah " & KeyAscii

End Sub


Cara kerja dari program diatas sangat sederhana, yaotu kita cukup menekan sebuah tombol atau gabungan dengan tombol Shift maka akan muncul sebuah Message box yang menampilkan nilai ASCII-nya.

Sebagai catatan, tidak semua tombol dapat kita tampilkan KEYASCII-nya misalnya tombol anak panah, Shift, CTRL, dll.
Read more ...

19 June 2008

Mencari Selisih Tanggal

Untuk mencari selisih dari dua buah tanggal tidaklah sulit, karena dalam visual basic telah disediakan fasilitas untuk melakukan hal tersebut dengan menggunakan fungsi " datediff ", yaitu sebuah fungsi yang digunakan untuk mendapatkan selisih dari dua buah tanggal. Dari fungsi dafediff kita bisa mendapatkan selisih hari, bulan dan tahun dari dua buah tanggal.

Cara penggunaan dari fungsi ini adalah sbb:

dim hari, bulan, tahun

'Untuk mencari selisih hari
hari=DateTime.DateDiff("d", CDate(Text1.Text), CDate(Text2.Text))

'Untuk mencari selisih bulan
bulan = DateTime.DateDiff("m", CDate(Text1.Text), CDate(Text2.Text))

'Untuk mencari selisih tahun
tahun = DateTime.DateDiff("yyyy", CDate(Text1.Text), CDate(Text2.Text))


Dalam contoh code diatas yang membedakan dari tiap kegunaannya adalah fungsi "d,m dan yyyy", dimana ketiganya mewakili untuk hari atau day (d), bulan atau month (m).

Dalam kode diatas, terdapat satu fungsi yang berfungsi untuk meng convert mengubah tipe data dari string ke tipe tanggal, yaitu fungsi CDate .

Kode diatas dapat kita letakkan pada prosedur command_click atau bisa juga diletakkan pada tempat lain.
Read more ...

06 June 2008

Select TextBox

Terkadang kalau melakukan validasi data pada textbox, maka kita sering sekali menggunakan perintah " textbox.setfocus " untuk membuat textbox mendapatkan fokus sehingga kursor langsung menuju ke textbox tersebut. Namun cara ini menurut saya kurang asik, karena pengguna harus menghapus terlebih dahulu kata-kata yang berada dalam textbox tersebut, sehingga menjadi tidak efektif.

Ada salah satu cara, yaitu dengan memblok atau menyeleksi semua isi dari textbox sehingga bila user ingin mengganti data yang di-inputkan maka user tidak perlu menghapus terlebih dahulu, namun bisa langsung memasukkan data yang baru. berikut contoh code -nya:

Private Sub Text1_GotFocus()
Text1.SelStart = 0
Text1.SelLength = Len(Text1)
End Sub

Untuk membuat text terpilih semuanya maka kita dapat meletakkan code kita pada event GotFocus pada textbox. Event ini berfungsi saat componen yang kita mendapatkan fokus atau pada saat kursor berada pada komponen ini, dalam hal ini komponen yang kita gunakan adalah textbox.

Pada properti SelStart nilai value kita set dengan nilai 0 berarti text yang kita pilih dimulai dari depan, kalau pengen dicobain, nilai ini bisa diubah menjadi 1 atau 2 atau berapapun asalkan tidak lebih dari jumlah karakter yang kita masukkan, dan bisa dilihat perpedaannya.

Kemudian pada baris kedua adalah panjang atau lebar sel atau text yang akan diseleksi, pada code ini kita set nilainya dengan menggunakan perintah Len , yang berfungsi untuk mengetahui banyaknya karakter pada textbox1, sehingga program kita akan lebih dinamis, bayangkan saja bila nilainya kita set menjadi nilai tertentu misalnya 10, maka yang terjadi adalah bila user memasukkan karakter lebih dari 10 maka data pada textbox tidak akan terseleksi semua.

Selamat Berexperimen
Read more ...

11 May 2008

Membatasi Fungsi Keyboard

Saat membuat sebuah aplikasi dengan berbasiskan database salah satu hal yang sangat penting untuk diperhatikan adalah validasi data. Apa yang terjadi bila tipe data yang diinputkan oleh user ternyata tidak cocok dengan tipe data yang telah diberikan pada database ? Tentunya akan terjadi kesalahan karena tipe data tidak valid.

Untuk validasi nilai angka dan huruf saja mungkin tidaklah sulit kita bias menggunakan perintah “isnumeric” untuk validasi angka dan “not isnumeric” untuk validasi karakter huruf. Namun cara ini saya nilai tidaklah efektif karena apabila dalam satu textbox yang kita validasi berisi gabungan dari huruf dan angka maka validasi yang kita gunakan menjadi tidak berguna.

Berikut ini saya berikan cara untuk membatasi inputan dari user sesuai dengan karakter yang kita inginkan :


Private Sub text1_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then
MsgBox “Anda baru menekan tombol Enter”
End If

If InStr("0123456789,", Chr(KeyAscii)) = 0 Then
If KeyAscii <> vbKeyBack Then
KeyAscii = 0
End If
End If

End Sub

Fungsi yang saya gunakan untuk membatasi input dari user adalah perintah InStr. Dengan perintah ini maka user hanya dapat menekan tombol-tombol pada keyboard sesuai dengan yang kita izinkan, pada contoh saya diatas, saya hanya mengizinkan atau mengaktifkan tombol “0123456789,” pada keyboard yang telah memiliki nilai ACSII tersendiri. Apabila user mengetikkan selain “0123456789,” maka aplikasi tidak akan merespon dan tidak akan ditampilkan pada textbox. Lalu bagaimana bila kita hanya boleh mengizinkan user untuk memasukkan huruf kecil saja maka kita bias mengganti code tadi menjadi :

InStr("abcde s.d. z", Chr(KeyAscii)) = 0

Dan berlaku untuk karakter lainnya.
Lalu apa fungsi dari code dibawahnya :

If KeyAscii <> vbKeyBack Then
KeyAscii = 0
End If

Code ini untuk mengizinkan user menggunakan tombol Backspace (vbKeyBack) untuk memperbaiki data yang ditelah dimasukkan.
Kelebihan dari code ini adalah untuk mencegah user usil dengan memasukkan code tertentu yang bisa digunakan untuk membobol database yang ada. Terutama bila menggunakan login yang datanya diambil dari database.
Read more ...

Membuat Paket File Instalasi

Untuk membuat paket file instalasi dibutuhkan beberapa langkah sbb:
  1. Pastikan program yang kita buat sudah tidak terdapat kesalahan

  2. Buatlah file exe-nya dengan memilih file >> Make (Project Name) exe...

  3. Masuklah ke menu Add-Ins

  4. Pada kolom Available Add-Ins carilah Package and Deployment Wizard

  5. Pada bagian Load Behavior beri tanda centang pada Loaded/Unloaded dan Load on Startup >> OK.

  6. Maka pada menu Add-Ins akan muncul menu baru yaitu Package and Deployment Wizard pilihlah menu ini untuk langkah selanjutnya.

  7. Pada window yang muncul pilihlah Package

  8. Apabila muncul permintaan untuk mengkompile ulang pilihlah perintah Yes. Apabila proses kompile gagal, itu berarti program yang dibuat masih memiliki kesalahan.

  9. Langkah selanjutnya kita bisa langsung memilih Next hingga muncul jendela Package folder. Pada bagian ini pilihlah letak tempat penyimpanan hasil paketan kemudian Next.

  10. Apabila muncul jendela Missing Dependency Information kita bisa melewati bagian ini dan langsung memilih OK.

  11. Langkah selanjutnya adalah munculnya jendela Included Files, apabila anda menggunakan database access maka pilihlah Add dan carilah database anda. Apabila file tidak ditemukan pada jendela Add File, ubahlah files of type menjadi All Files (*.*).

  12. Sebelum memilih Next perhatikan terlebih dahulu Name dari File, hilangkan tanda centang pada file msado25.tlb. Pengalaman saya bila file ini tidak dihilangkan maka pada saat proses instalasi akan muncul pesan kesalahan yang bila kita Ignore maka tidak akan mempengaruhi aplikasi kita.

  13. Pada jendela selanjutnya ada dua pilihan yaitu Single Cap dan Multiple Caps, apabila dipilih Single Cap maka file-file aplikasi akan dibuat dalam satu file, namun bila kita memilih Multiple Caps kita bisa membagi file-file instalasi menjadi beberapa file sebesar Cap size, lalu Next

  14. Pada bagian Installation Title isilah kata-kata yang biasanya merupakan nama dari aplikasi yang kita buat, dan akan muncul sebagai latarbelakang pada saat proses instalasi.

  15. Pada langkah selanjutnya merupakan pengaturan tata letak shortcut pada start menu kita bisa mengubah tata letak dan namanya atau kita bisa langsung klik Next.

  16. Langkah selanjutnya kita bisa langsung klik Next juga pada bagian Shared files di langkah selanjutnya.

  17. Finish

  18. Pada akhir proses paket ada laporan yang bisa kita sompan atau bisa juga diabaikan.

  19. Cobalah melakukan instalasi dan cobalah.



Read more ...
 
>