Ferramentas de Usuário

Ferramentas de Site


dev_net:vb.net:progressbar_datagrid

Progressbars no Datagrid

As progressbars são uma grande ajuda, principalmente para os beginners, para uma perspectiva sobre o que se está a passar num determinado jogo, numa determinada aplicação. Em todos os sítios encontramos barras de progresso, elas determinam o tempo de uma tarefa até estar concluída.

Para quem se inicia no "mundo" das barras de progresso, deixo este link: ProgressBar - Barras de progresso desmistificadas para uma melhor percepção do conceito.

Controlos Necessários

  1. DataGridView
  2. ProgressBar

Códigos Necessários

        'Inicialização com a base de dados e respectiva selecção de dados;
        Dim BaseDados As String = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Application.StartupPath & "BD.mdb"
        Dim Query As String = "SELECT * FROM Tabela"
        Dim Connection As New OleDbConnection(BaseDados)
        Dim command As New OleDbCommand(Query , Connection)
 
        ' Abrimos a conexão;
        Connection.Open()
 
        ' Executamos o comando atribuindo-lhe um OleDbDataReader onde irá armazenar os resultados; 
        Dim DataReader As OleDbDataReader = command.ExecuteReader
 
        ' Definimos os valores da progressbar inicialmente;
        ProgressBar1.Value = 0
        ProgressBar1.Maximum = 0
 
        ' Variável para receber e adicionar os valores da progressbar;
        Dim Int As Integer = 0
 
        ' Enquanto a selecção dos dados não estiver concluída..
        While DataReader.Read
 
        ' Incrementamos à varíavel um valor;
            Int += 1
 
            ' Criamos um DataSet, que significa uma representação da informação em memória;
            Dim DataSet As New DataSet
            ' Criamos um DataAdapter, que servirá para actualizar o DataSet;
            Dim DataAdapter As New OleDbDataAdapter(Query, Connection)
 
            ' Incutimos a informação da Tabela no DataSet;
            DataAdapter.Fill(DataSet, "Tabela")
            ' No DataSource da DataGridView é onde vamos receber toda a informação proveniente do DataSet, 
            ' onde o mesmo irá automaticamente prencher a DataGridView com as informações da Tabela;            
            Me.DataGridView1.DataSource = DataSet.Tables("Tabela")
 
            ' Definimos que o valor máximo da progressbar é igual à variável inicialmente imposta por nós;
            ProgressBar1.Maximum = Int
            ' O PerformStep() serve para a progressbar andar "para a frente" de modo a auto completar-se;
            ProgressBar1.PerformStep()
            ' Refrescamos a progressbar;
            ProgressBar1.Refresh()
 
        End While
 
        ' Fecha a ligação e limpa as variáveis.
            Connection.Close()
            Connection = Nothing
            command = Nothing
No código foi usado a base de dados Microsoft Access 2003 (.mdb), caso a base de dados seja Microsoft Access 2007 deve-se utilizar a extensão (.accdb)
Antes do Public Class(no source-code) devemos incutir o Imports System.Data.OleDb

Artigo escrito por bioshock

dev_net/vb.net/progressbar_datagrid.txt · Última modificação em: 2018/05/14 21:37 (edição externa)