//honeypot demagogic

 Forum DhammaCitta. Forum Diskusi Buddhis Indonesia

Author Topic: Mohon Bantuan: Listbox slow loading  (Read 2964 times)

0 Members and 1 Guest are viewing this topic.

Offline dhammasiri

  • Sahabat
  • ***
  • Posts: 465
  • Reputasi: 44
  • Gender: Male
Mohon Bantuan: Listbox slow loading
« on: 12 February 2010, 02:46:58 PM »
Teman-teman,
Saya telah mampu menyelesaikan masalah terdahulu untuk Combobox selectedIndexChanged. Namun, saya menghadapi masalah baru, yaitu kalau entry yang ingin ditambilkan di listbox cukup banyak, saya butuh waktu untuk meload. Kadang cukup lama juga. Apa teman-teman punya saran agar saya bisa menampilkan entry di listbox lebih cepat? Belikut ini adalah fitur dan sourcecodenya.

N.B: Jujur kalau saya sedang mentok begini saya tidak mau jalan atau berhenti. Saya harus terus mencari cara untuk menyelesaikannya sehingga saya terus berkutat pada masalah ini. Terima kasih atas bantuannya.
Spoiler: ShowHide

Code: [Select]
Imports System.Data.SQLite
Imports System.IO
Public Class Form1
    Inherits System.Windows.Forms.Form

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        comboboxLoad()
    End Sub

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        DictLoad()
    End Sub

Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
        EntryLoad()
        If ListBox1.TopIndex <> ListBox1.SelectedIndex Then
            ' Make the currently selected item the top item in the ListBox.
            ListBox1.TopIndex = ListBox1.SelectedIndex
        End If
        WebBrowser1.DocumentText = "& txtMeanings.Text & "
       
    End Sub


    Private Sub txtSearch_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSearch.TextChanged
        Dim curItem As String = txtSearch.Text.ToString()

        ' Find the string in ListBox2.
        Dim index As Integer = ListBox1.FindString(curItem)
        ' If the item was not found in ListBox 2 display a message box, otherwise select it in ListBox2.
        If index = -1 Then
            MessageBox.Show("Vocabulary not available!")

        Else
            ListBox1.SetSelected(index, True)
        End If
    End Sub

Private Sub comboboxLoad()
        Dim sqlcon As New SQLiteConnection("Data Source=" & Application.StartupPath & "\Data\DUBD.db;")
        Dim str As String
        sqlcon.Open()
        ListBox1.Items.Clear()
        str = "select DictLists from Dictionary "
        Dim sqlcom As New SQLiteCommand(str, sqlcon)
        Dim dr As SQLiteDataReader
        dr = sqlcom.ExecuteReader()
        While dr.Read()
            ComboBox1.Items.Add(dr("DictLists"))
        End While
    End Sub

Private Sub DictLoad()
        Dim sqlcon As New SQLiteConnection("Data Source=" & Application.StartupPath & "\Data\DUBD.db;")
        Dim str As String
        sqlcon.Open()
        txtEntry.Text = ""
        txtMeanings.Text = ""

        ListBox1.Items.Clear()
        str = "select * from Entry where DictLists ='" & (ComboBox1.SelectedItem) & "' "
        Dim sqlcom As New SQLiteCommand(str, sqlcon)
        Dim dr As SQLiteDataReader
        dr = sqlcom.ExecuteReader()
        While dr.Read()
            ListBox1.Items.Add(dr("EntryLists"))
        End While
    End Sub
    Private Sub EntryLoad()
        Dim sqlcon As New SQLiteConnection("Data Source=" & Application.StartupPath & "\Data\DUBD.db;")
        Dim str As String
        sqlcon.Open()
        txtEntry.Text = ""
        txtMeanings.Text = ""
        txtSources.Text = ""
        Label3.Text = ""

        str = "select * from Entry where EntryLists ='" & (ListBox1.SelectedItem) & "'"
        Dim sqlcom As New SQLiteCommand(str, sqlcon)
        Dim dr As SQLiteDataReader
        dr = sqlcom.ExecuteReader()
        While dr.Read()
            Label3.Text = dr("EntryLists")
            txtMeanings.Text = dr("Meanings")
            txtSources.Text = dr("Sources")
        End While
    End Sub

   
End Class
Kedamaian dunia tidak akan tercapai bila batin kita tidak damai

Offline Sumedho

  • Kebetulan
  • Administrator
  • KalyanaMitta
  • *****
  • Posts: 12.406
  • Reputasi: 423
  • Gender: Male
  • not self
Re: Mohon Bantuan: Listbox slow loading
« Reply #1 on: 25 February 2010, 01:43:52 PM »
kalau dibikin partial?

misalnya jgn berbentuk listbox tetapi popup atau dialog. jadi didalam dialognya dibagi berdasarkan abjad lagi. ketika di klik abjadnya, baru pilihannya yg berawalan abjad tadi muncul.
There is no place like 127.0.0.1

Offline Indra

  • Global Moderator
  • KalyanaMitta
  • *****
  • Posts: 14.819
  • Reputasi: 451
  • Gender: Male
Re: Mohon Bantuan: Listbox slow loading
« Reply #2 on: 25 February 2010, 01:50:15 PM »
mending proyeknya di-outsource-kan aja, Sam, ke DC, pasti beres, harga negotiable

Offline Sumedho

  • Kebetulan
  • Administrator
  • KalyanaMitta
  • *****
  • Posts: 12.406
  • Reputasi: 423
  • Gender: Male
  • not self
Re: Mohon Bantuan: Listbox slow loading
« Reply #3 on: 25 February 2010, 01:52:17 PM »
ato dibikin versi webnya jg. data di supply aja ;D
There is no place like 127.0.0.1

Offline Indra

  • Global Moderator
  • KalyanaMitta
  • *****
  • Posts: 14.819
  • Reputasi: 451
  • Gender: Male
Re: Mohon Bantuan: Listbox slow loading
« Reply #4 on: 25 February 2010, 01:57:11 PM »
mungkin tips kecil ini bisa sedikit mempercepat,

hindari "SELECT * FROM ...",
biasakan menyebutkan hanya column yg perlu saja, misalnya "SELECT word FROM ..."

Offline dhammasiri

  • Sahabat
  • ***
  • Posts: 465
  • Reputasi: 44
  • Gender: Male
Re: Mohon Bantuan: Listbox slow loading
« Reply #5 on: 26 February 2010, 12:27:21 AM »
mending proyeknya di-outsource-kan aja, Sam, ke DC, pasti beres, harga negotiable
Di-outsource-kan gimana maksudnya? Maaf saya tidak bermaksud untuk membuat software komersial. Saya bekerja keras siang malam untuk kamus ini hingga thesis saya keleleran, tidak akan maksud untuk mengomersialkan kamus digital ini. Setelah selesai, saya akan bagikan kepada siapa pun yang menginginkannya. Kalau Sdr. Sumedho dan Indra mau bantu, saya bisa kirim sourcecodenya, biar proyek ini selesai dan saya bisa duduk dengan tenang mengerjakan Thesis saya.
Thanks atas bantuannya dan kepedulian teman-teman semua.
Kedamaian dunia tidak akan tercapai bila batin kita tidak damai

Offline Sumedho

  • Kebetulan
  • Administrator
  • KalyanaMitta
  • *****
  • Posts: 12.406
  • Reputasi: 423
  • Gender: Male
  • not self
Re: Mohon Bantuan: Listbox slow loading
« Reply #6 on: 26 February 2010, 12:29:54 AM »
maksudnya dari sdr Indra itu, diperbantukan oleh teman2x di DC pengerjaannya. bukan utk dikomersilkan :)
There is no place like 127.0.0.1

Offline dhammasiri

  • Sahabat
  • ***
  • Posts: 465
  • Reputasi: 44
  • Gender: Male
Re: Mohon Bantuan: Listbox slow loading
« Reply #7 on: 26 February 2010, 12:33:25 AM »
ato dibikin versi webnya jg. data di supply aja ;D
Kalau buat versi webnya sih mudah karena saya bisa mengubah database dengan cepat (saya pikir begitu)
Kedamaian dunia tidak akan tercapai bila batin kita tidak damai

Offline dhammasiri

  • Sahabat
  • ***
  • Posts: 465
  • Reputasi: 44
  • Gender: Male
Re: Mohon Bantuan: Listbox slow loading
« Reply #8 on: 26 February 2010, 12:35:33 AM »
maksudnya dari sdr Indra itu, diperbantukan oleh teman2x di DC pengerjaannya. bukan utk dikomersilkan :)
Ya boleh, saya cuma kesulitan dalam hal itu saja. Saya bisa kok upload sourcecodenya.
Kedamaian dunia tidak akan tercapai bila batin kita tidak damai

 

anything