Ir para conteúdo
Fórum Script Brasil
  • 0

Barra Progressiva


ramon

Pergunta

12 respostass a esta questão

Posts Recomendados

  • 0

Eu tenho este controle no meu vb porem eu não consigo é montar

O que eu quero é um exemplo do codigo do progressbar

pois enquanto o loop dos eventos ta trabalhando eu quero mostrar algo para o usuario que no caso seria uma barra progressiva

então alguém tem um exemplo e como eu chamo os eventos para colocar no progressbar?????

Link para o comentário
Compartilhar em outros sites

  • 0

Por exemplo, se você tem um Recordset cheio de registros e deve processá-los de alguma maneira, você poderia fazer:

progressbar1.max = rs.RecordCount
progressbar1.value = 0
do while not rs.Eof
  'faz algo com o registro
  progressbar1.value = progressbar1.value + 1
  doevents
  rs.movenext
loop

Se você queria um exemplo, acho que esse serve.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Não entendi aquele "rs"

Tipo eu teria que usar o progress bar num timer pois meus eventos estão dentro do timer

quais as alteracoes que treia que fazer no seu codigo?

Link para o comentário
Compartilhar em outros sites

  • 0

Ops, perdão. Esqueci de especificar que o rs tratava-se de um Recordset. Não sei como você está implementando seu código, mas tudo que você tem que saber é que a propriedade Max guarda o valor máximo da barra de progresso e a propriedade Value guarda o valor atual (a quantidade já preenchida). Se você definir que Max=100 então Value irá aceitar valores entre 0 e 100. No exemplo anterior eu defini que Max é igual a quantidade de registros do Recordset (podem ser 10, 20, 32, etc.) e percorri todo o Recordset, acrescentando +1 à propriedade Value a cada iteração.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

ae que ta o problema

eu tenho 4 estruras for.....next dentro de um timer

Eu quero que quando cada estrura vai terminado a barra vai prenchendo.

quando as 4 estruras terminar a barra tem que tá totalmente prenchida

eu não posso definir um valor máximo pois as as estruras poderão ter valor 30 20 ou sei lá quantos loops

pois os lops são feitos atraves da listcount

Link para o comentário
Compartilhar em outros sites

  • 0
eu tenho 4 estruras for.....next dentro de um timer

pois os lops são feitos atraves da listcount

Acho que você não entendeu o que eu disse na outra mensagem, pois encontrei duas inconsistências no que você disse: em uma instrução For...Next você sempre específica um valor máximo e se você usa ListCount como o valor final, esse será o seu valor máximo. Portanto...

ProgressBar1.Max = objeto.ListCount

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Mais são varias estruturas para uma progressbar biggrin.gif

È seguinte, tenho que colocar um progressbar neste codigo abaixo.

Como vocês podem ver existem loops e comunicação com outras sub

Então eu não sei aonde colocar a progressbar

Eu poderia colocar um form escrito aguarde ou ate mudar a ampureta do mouse

no inicio do timer e etc....

Mas eu quero uma progressbar

alguém tem uma ideia?


Private Sub Timer2_Timer()
MinhaEquipe = Label3

If Label10 = "0" Then NME = 0 * 10: MinhaDivisao = 0
If Label10 = "1" Then NME = 1 * 10: MinhaDivisao = 1
If Label10 = "2" Then NME = 2 * 10: MinhaDivisao = 2
If Label10 = "3" Then NME = 3 * 10: MinhaDivisao = 3

For k = 0 To 9
 If T(k).Value = True Then NME = NME * 1 + k: Exit For
Next k

For k = 0 To 39
 If Tecn(k, 0) = Div(NME, 0, 1) Then Tecn(k, 0) = Label4: Exit For
Next k
Div(NME, 0, 1) = Label4

Noticias.List2.AddItem "Direção do " & Label3
Noticias.List2.AddItem "A direção do " & Label3 & " contrata " & Label4 & " como novo técnico."
Noticias.N(0).Visible = True

For pos = 0 To 39
 If pos <= 9 Then dk = 0: pt2 = pos
 If pos > 9 And pos <= 19 Then dk = 10: pt2 = pos * 1 - dk
 If pos > 19 And pos <= 29 Then dk = 20: pt2 = pos * 1 - dk
 If pos > 29 And pos <= 39 Then dk = 30: pt2 = pos * 1 - dk

 For Rodada = 0 To 17
   Call VerRodada
   
For k2 = 0 To 4
For k3 = 0 To 1
    If Fat(k2, k3) = pt2 Then pri = k2: Exit For
Next k3
Next k2
  k2 = pri
  Calendario(pos, Rodada, 0) = Div(Fat(k2, 0) * 1 + dk, 0, 0)
  Calendario(pos, Rodada, 3) = Div(Fat(k2, 1) * 1 + dk, 0, 0)
 Next Rodada
Next pos

Rodada = 0

Call VerRodada

FormGeral.Show
Timer2.Enabled = False
Exit Sub
End Sub

Link para o comentário
Compartilhar em outros sites

  • 0
Mais são varias estruturas para uma progressbar biggrin.gif

Isso não invalida o que eu disse, já que para cada instrução For... Next você terá o número de iterações (e o número total de iterações será a multiplicação desses valores). No entanto, acho que você nem precisa disso. Aliás, não entendi porque você colocou essa instrução em um Timer, já que, pelo que entendi, ela vai ser executada apenas uma vez. De qualquer forma, naquele "For pos = 0 To 39" você poderia colocar (dentro do loop) o "progressbar1.value = progressbar1.value + 1" e antes do loop definir que progressbar1.max é igual a 39. Não vai representar todo o processo, mas pelo menos vai representar a parte mais demorada.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...