• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

nOpe

[VB.NET] Progress bars

13 mensagens neste tópico

N consigo por uma progress bar a funkar no VB.NET  :P

Eu conseguia po-las a funkar no vb6 mas n tou a conseguir no VB.NET pk o procedimento n é o mm...

Alguem me poderia ajudar?  :wallbash:

Cumps [[]]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

em VB.NET, o controlo progress bar tem estas propriedades essenciais: MinValue, MaxValue e Value.

O minValue é, tal como o nome indica, o valor mínimo da progress bar

maxValue o valor máximo

e Value o valor presente da progress bar.

Exemplo de Utilização:


ProgressBar.minvalue = 0
ProgressBar.maxvalue = 4

For i as Integer = 0 to 4
MsgBox(i & " vezes")
ProgressBar.value = i
Next

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois e eu agr kria associar um timer a iss...

Por exemplo uma maneira de fazer iss no vb6 era:

(pro timer)

Text1=text1+1
progressbar1.value=text1

O problema é k n consigo implementar o "Text1=text1+1" no timer... da um problema kk...  :P:)

Podiam-me ajudar?

Cumps [[]]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois e eu agr kria associar um timer a iss...

Por exemplo uma maneira de fazer iss no vb6 era:

(pro timer)

Text1=text1+1
progressbar1.value=text1

O problema é que n consigo implementar o "Text1=text1+1" no timer... da um problema kk...  :P:)

Podiam-me ajudar?

Cumps [[]]

pah mas kual é o erro k da o compilador? o text1 é uma string ou inteiro, é possivel somares uma string a um inteiro? (não percebo de VB =x ), mas talvez ele faça a concatenaçao do valor 1 com o text1 e atribua a string a variavel progressbar1.value , que deve receber inteiro ou algo assim......

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desculpa mas n percebi mto bem... =\

Sei k ja tentei assumir o textbox1 como integer, double, long (kk coisa) e continua a n dar...

Mas percebest o k kria fazer?

Basicamente eu kria k dentro do intervalo de tempo (iss sei fazer) o timer adicionasse uma unidade à textbox1 e k o valor da texbox1 se reflectisse no valor da progress bar...

O problema é mm fazelo no VB.NET pk no vb6 era na boa...

Cumps [[ ]]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

sorry eskecime de dizer... sim o valor dentro da textbox1 é um numero inteiro... (kero k komeçe com 0 (valor dentro do texbox1) +1

Cumps [[ ]]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

entao tent

sorry eskecime de dizer... sim o valor dentro da textbox1 é um numero inteiro... (quero que komeçe com 0 (valor dentro do texbox1) +1

Cumps [[ ]]

Entao tenta fazer o seguinte.  progressbar1.value = text1.toInt() + 1;    ( Nao me lembro se é a class string tem o metodo "toInt" =X, ou entao deve estar na class Convert, o algo assim....).  mas o probelma é k estas a atribuir uma string a uma variavel inteira ou double.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Entao tenta fazer o seguinte.  progressbar1.value = text1.toInt() + 1;    ( Nao me lembro se é a class string tem o metodo "toInt" =X, ou entao deve estar na class Convert, o algo assim....).  mas o probelma é que estas a atribuir uma string a uma variavel inteira ou double.)

Continua a n dar...  :P E n é text1 é textbox1

Diz o seguinte erro: 'to into' is not a member of 'System.Windows.Forms.Textbox'

entao como posso converter uma string em integer ou double? (se é k é possivel...)

Cumps [[ ]]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Basicamente eu kria que dentro do intervalo de tempo (iss sei fazer) o timer adicionasse uma unidade à textbox1 e que o valor da texbox1 se reflectisse no valor da progress bar...

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'ProgressBar
        ProgressBar1.Minimum = 0
        ProgressBar1.Maximum = 10

        'Textbox
        TextBox1.Text = 0

        'Timer
        Timer1.Interval = 5000
        Timer1.Enabled = True
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        'Se o valor for menor que o valor maximo entao
       If ProgressBar1.Value < ProgressBar1.Maximum Then
            ProgressBar1.Value = ProgressBar1.Value + 1
            TextBox1.Text = TextBox1.Text + 1
        Else : Timer1.Enabled = False
        End If
    End Sub

End Class

OU...se por acaso a tua textbox contiver mais texto podes fazer por exemplo

Public Class Form1

    Private numero As Integer = 0

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'ProgressBar
        ProgressBar1.Minimum = 0
        ProgressBar1.Maximum = 10

        'Textbox
        TextBox1.Text = "Numero: " & numero

        'Timer
        Timer1.Interval = 1000
        Timer1.Enabled = True
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If ProgressBar1.Value < ProgressBar1.Maximum Then
            ProgressBar1.Value = ProgressBar1.Value + 1
            numero = numero + 1
            TextBox1.Text = "Numero: " & numero
        Else : Timer1.Enabled = False
        End If
    End Sub

End Class

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Entao tenta fazer o seguinte.  progressbar1.value = text1.toInt() + 1;    ( Nao me lembro se é a class string tem o metodo "toInt" =X, ou entao deve estar na class Convert, o algo assim....).  mas o probelma é que estas a atribuir uma string a uma variavel inteira ou double.)

Continua a n dar...  :P E n é text1 é textbox1

Diz o seguinte erro: 'to into' is not a member of 'System.Windows.Forms.Textbox'

entao como posso converter uma string em integer ou double? (se é que é possivel...)

Cumps [[ ]]

tb disse mal.... textbox1.Text.toInt()?

Entao tenta fazer o seguinte.  progressbar1.value = text1.toInt() + 1;    ( Nao me lembro se é a class string tem o metodo "toInt" =X, ou entao deve estar na class Convert, o algo assim....).  mas o probelma é que estas a atribuir uma string a uma variavel inteira ou double.)

Continua a n dar...  :) E n é text1 é textbox1

Diz o seguinte erro: 'to into' is not a member of 'System.Windows.Forms.Textbox'

entao como posso converter uma string em integer ou double? (se é que é possivel...)

Cumps [[ ]]

textbox1.Text.ToInt32();   

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Deixa ja arranjei maneira de conseguir...

Afinal era so uma kestao de oor text antes... O k n fazia no vb 6...

(Pro timer)
TextBox1.Text = (TextBox1.Text + 1)

Obrigado pla ajuda e peço desculpa pla "burrisse" lol

Cumps [[ ]]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes ter também problemas a actualizar a progressbar quando queres q ela vá aumentando o valor à medida que determinada função que tenhas seja executada. Para resolveres tens que recorrer à utilização de threads, senão só no fim de todo o ciclo é que vês a progressbar actualizada.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora