Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [VB.net ]progress bar query

    raga volevo sapere se è possibile inserire una progress bar che scorra fino a quando non viene terminata la query ad un db...
    es io faccio una query ad un db premo sul btn cerca e la progress bar inizia a scorrere fino a quando non viene restituito il valore della query ora posto anche il codice....
    codice:
    vorrei inserire una progress bar mentre fa questa operazione
    
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    
            m_cnConnessioneADO.CursorLocation = ADODB.CursorLocationEnum.adUseClient
            m_cnConnessioneADO.Open("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:\Programmi\Cocktail Free\Coktail.mdb")
            Dim sc As String
            sc = ComboBox1.SelectedItem
            Dim sc2 As String
            sc2 = ComboBox2.SelectedItem
            Dim sc3 As String
            sc3 = ComboBox3.SelectedItem
            Dim sc4 As String
            sc4 = ComboBox4.SelectedItem
            Dim sc5 As String
            sc5 = ComboBox5.SelectedItem
            Dim sql As String
            sql = "SELECT * FROM Alcolici WHERE (Ingredienti LIKE '%" & sc & "%' ) And (Ingredienti LIKE '%" & sc5 & "%')And (Ingredienti LIKE '%" & sc3 & "%')And (Ingredienti LIKE '%" & sc4 & "%')And (Ingredienti LIKE '%" & sc2 & "%') "
            NomeCok.Text = ""
            NomeDes.Text = ""
            NomeIng.Text = ""
            m_rsAlcolici.Open(sql, m_cnConnessioneADO, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)
            ' A questo punto hai il record  
            ' ma (prima) lo chiudevi subito  
            ' Questa istruzione, poi, la facevi sempre prima 
            ' della Open 
            If m_rsAlcolici.RecordCount > 0 Then
                NomeCok.Text = m_rsAlcolici.Fields("Nome").Value
                NomeDes.Text = m_rsAlcolici.Fields("Descrizione").Value
                NomeIng.Text = m_rsAlcolici.Fields("Ingredienti").Value
                Timer1.Enabled = True
            Else
                If m_rsAlcolici.RecordCount = 0 Then
                    MsgBox("Non è stato trovato nessun cocktail.Adesso il programma eliminerà automaticamente un'ingrediente, per trovare un cocktail che si avvicina di più alle tue caratteristiche", MsgBoxStyle.Exclamation)
                    Controllastato()
                End If
            End If
            If Not m_rsAlcolici.ActiveConnection Is Nothing Then m_rsAlcolici.Close()
            sql = "SELECT * FROM Alcolici WHERE (Ingredienti LIKE '%" & sc & "%' ) And (Ingredienti LIKE '%" & sc2 & "%')And (Ingredienti LIKE '%" & sc3 & "%') "
            NomeCok.Text = ""
            NomeDes.Text = ""
            NomeIng.Text = ""
            m_rsAlcolici.Open(sql, m_cnConnessioneADO, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)
            ' A questo punto hai il record  
            ' ma (prima) lo chiudevi subito  
            ' Questa istruzione, poi, la facevi sempre prima 
            ' della Open 
            If m_rsAlcolici.RecordCount > 0 Then
                NomeCok.Text = m_rsAlcolici.Fields("Nome").Value
                NomeDes.Text = m_rsAlcolici.Fields("Descrizione").Value
                NomeIng.Text = m_rsAlcolici.Fields("Ingredienti").Value
                Timer1.Enabled = True
            Else
                If m_rsAlcolici.RecordCount = 0 Then
                    MsgBox("Non è stato trovato nessun cocktail.Adesso il programma eliminerà automaticamente un'ingrediente, per trovare un cocktail che si avvicina di più alle tue caratteristiche", MsgBoxStyle.Exclamation)
                End If
            End If
            If Not m_rsAlcolici.ActiveConnection Is Nothing Then m_rsAlcolici.Close()
            sql = "SELECT * FROM Alcolici WHERE (Ingredienti LIKE '%" & sc & "%' ) And (Ingredienti LIKE '%" & sc2 & "%') "
            NomeCok.Text = ""
            NomeDes.Text = ""
            NomeIng.Text = ""
            m_rsAlcolici.Open(sql, m_cnConnessioneADO, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)
            ' A questo punto hai il record  
            ' ma (prima) lo chiudevi subito  
            ' Questa istruzione, poi, la facevi sempre prima 
            ' della Open 
            If m_rsAlcolici.RecordCount > 0 Then
                NomeCok.Text = m_rsAlcolici.Fields("Nome").Value
                NomeDes.Text = m_rsAlcolici.Fields("Descrizione").Value
                NomeIng.Text = m_rsAlcolici.Fields("Ingredienti").Value
                Timer1.Enabled = True
            Else
                If m_rsAlcolici.RecordCount = 0 Then
                    MsgBox("Non è stato trovato nessun cocktail.Adesso il programma eliminerà automaticamente un'ingrediente, per trovare un cocktail che si avvicina di più alle tue caratteristiche", MsgBoxStyle.Exclamation)
                End If
            End If
            If Not m_rsAlcolici.ActiveConnection Is Nothing Then m_rsAlcolici.Close()
            m_cnConnessioneADO.Close()
        End Sub

  2. #2
    non puoi usare una progress bar... tranne se la fai riempire e svuotare di continuo.... ma non puoi calcolare il tempo di esecuzione delle query prima di eseguirla...
    I database... la mia passione + o -

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.