Thursday, June 4, 2015

VB Net : Insert Listview Dengan Perulangan

Ada banyak cara untuk menghindari tampilan aplikasi "tampak" hang ataupun "Not Responding", salah satu yang biasa penulis pakai untuk menampilkan data adalah dengan menggunakan listview dan memanfaatkan fungsi perulangan.

Berikut contoh nya.
1. Buka new project
2. Tambahkan 1 Listview, 1 ProgressBar, 1 Label, dan 1 Button


3. Ketik / Copy paste source berikut :
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim con As New OleDb.OleDbConnection("Provider=SQLOLEDB;Server=.\SQLEXPRESS;Database=dbName;Uid=DBUser;Pwd=DBPwd;")
con.Open()
Dim cmd As New OleDb.OleDbCommand("select PLU,BARCODE,DESCP from ms_item", con)
Dim reader As OleDb.OleDbDataReader = cmd.ExecuteReader

'ngambil jumlah record yang mw ditampilin
cmd = New OleDb.OleDbCommand("select count(*) from ms_item", con)
Dim jumlahData As Double = cmd.ExecuteScalar

'ngambil nama field buat nama header listview, 90 = lebar per kolom listview
ListView1.View = View.Details
For i As Integer = 0 To reader.FieldCount - 1
ListView1.Columns.Add(reader.GetName(i), 90)
ListView1.Items.Clear()
Next

'atur properties progresbar dan label1
ProgressBar1.Maximum = jumlahData
ProgressBar1.Value = 0
Label1.Text = "Loading Data 0 dari 0"

'perulangan buat ngisi listview satu per satu data
Do While reader.Read
ListView1.Items.Add(reader.Item(0).ToString)
For i As Integer = 1 To reader.FieldCount - 1
ListView1.Items.Item(ListView1.Items.Count - 1).SubItems.Add(IIf(IsDBNull(reader.Item(i)), "", reader.Item(i).ToString))
Next
'nah ini yang biar gak kliatan hang waktu proses berlangsung
System.Windows.Forms.Application.DoEvents()
ProgressBar1.Value = ProgressBar1.Value + 1
Label1.Text = "Loading Data " & ProgressBar1.Value & " dari " & jumlahData
Loop
reader.Close()
End Sub   
End Class
Nb. Sample diatas menggunakan database SQL Server express, Silahkan sesuaikan dengan database yang dipakai pembaca

0 comments:

Post a Comment

Terima kasih sudah berkomentar

Coretan © 2008.
Hanya blog sederhana, sebagai bahan contekan dikala sedang belajar membuat project