Halaman

Selasa, 14 Juni 2011

Membuat Textbox hanya bisa Numeric di VB. Net


Pasti sahabat-sahabat .Net banyak yang bertanya bagaimana membuat default TextBox yang biasanya bisa i isi baik inputan Text maupun numerik kita tetapkan menjadi Numerik saja kan?
Apakah tipe data dalam textbox tersebut harus bertipe number / numeric / angka atau bertipe char/ karakter.


Sebenarnya dalam vb.net kita tidak usah repot2 untuk membuat hal tersebut. Karena dalam Vb.Net sendiri sudah ada fungsi tersebut. Namanya IsNumeric, dan syntax dasar / format penisan kodenya adalah IsNumeric(nilainya) contoh isnumeric("1") atau bisa juga dengan menggunakan variabel isnumeric(namavariabel).
ini saya mau share caranya yang kebetulan dapat dari literature googling 



Pertama2 buatlah sebuah textbox di form anda. Dan aturlah propertiesnya sesuai kebutuhan. 
atau saya misalkan di bawah ini yah


Apabila sudah masuk ke bagian codingnya. kalo bingung cara masuk ke bagian coding, caranya double clik aja pada form yang kita buat. atau pada menu bar di atas kita cari View dan klik  sollution Explorer pilih form yang kita buat, klik kanan dan pilih view code...




Pada bagian yang ditunjuk oleh nomor 1 yang bertuliskan Form1 apabila kita mengklik tanda panahnya yang di sebelah kanan maka akan muncul nama-nama object yang telah kita buat sebelumnya. object-object yang dimaksud seperti : textbox, button, label, datagridview, dll.


Sedangkan pada bagian yang ditunjuk oleh nomor 2 yang bertuliskan (Declaration) biasanya merupakan daftar event yang ada pada object tersebut. misal click, textchange, dll.



Nah sekarang pada bagian 1 pilih nama textbox yang tadi kita buat. kalo belum diubah-ubah nama default adalah textbox1, lalu pada bagian 2 pilih KeyPress. Kenapa kita pilih event KeyPress? Karena untuk mengecek dan mendisable input yang dimasukan user biasanya kita lakukan di event ini. Gampangnya event ini dijalankan bila pada textbox terjadi keypress dari user / ketika user menekan keyboardnya.
Lalu untuk codingnya cuman seperti ini


If IsNumeric(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If


penjelasannya :
e.KeyChar berfungsi untuk mendapatkan value / data yang di input oleh user.

yang nantinya dicek oleh IsNumeric. Lalu bila true maka akan menjalankan fungsi e.Handled = false, sedangkan kalu false maka e.handled = true yang akan dijalankan. Oh iya coding diatas untuk membuat textbox hanya bisa numeric atau angka saja yach.. dan inipun belum bsia di gunakan untuk hapus atau back space..
Gan mana Coding Buat hapus.. sabar ya ne TS masih mau buat


        Dim key As Integer = Char.ConvertToUtf32(e.KeyChar.ToString(), 0)
        If Not (((key >= 48) And (key <= 57)) Or (key = 8)) Then
            e.Handled = True
        End If

Apakah fungsi dari e.handled = false dan e.handled = true
Sekarang asumsikan e.handled itu sebagai polisi yang menilang. Kemudian true dan false sebagai status polisinya. apabila true maka polisinya berarti menilang, dan bila false maka polisinya tidak menilang. dan untuk isnumeric kita asumsikan sebagai pengendara motor, Maka penjelasan / cerita secara keseluruhannya. ketika si pengendara motor itu benar(ini artinya: nilai dari isnumeric(e.keychar) adalah true), maka polisi tidak akan menilang si pengendara motor(e.handled =false), dan pengendara motor tersebut dapat tetap berjalan. tetapi apabila pengendara motor itu salah(ini artinya: nilai dari isnumeric(e.keychar) adalah false), maka secara otomatis polisi akan menilangnya(e.handled =true), dan pengendara motor tidak dapat berjalan. akibat dari penilangan ini si pengendara motor tidak dapat berjalan lagi.
Sedangkan bila dalam program ini artinya ketilang berarti perintah tersebut dibatalkan atau tidak dilakukan. maka ketika kita menekan keyboard yang bernilai karakter pada textbox1, maka nilainya tidak akan dimasukan ke dalam textbox tersebut.



Dan untuk membuat textbox hanya dapat karakter saja, tinggal membalikan nilai dari e.handled saja. yang nilai pertama ganti true, dan yang kedua ganti jadi false.



Hasilnya dari inputan di ats hanya numeric yah

terima kasih ya buat Bung @boby Harmoko yang udah share...jin Nyimak

7 komentar:

Silahkan Isi Komentar yang membangun