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

FabioSantos

Semáforos em VB

3 mensagens neste tópico

Boas, tenho um projecto de VB que consiste em simular uns semáforos!

O problema é o seguinte, eu quero que uma das luzes, durante a contagem fique numa cor (Verde Claro), e que quando acabe a contagem, mude para outra cor (Verde escuro), acontece que apenas muda para a cor final... Isto quando corro o programa normalmente, porque se fizer Step-Into (F8), o programa funciona correctamente.

Vou deixar aqui o codigo que ja tenho:

Dim Now, Counter2, iCount As Single

Private Sub ActivateButton_Click()

Dim Counter, Counter2 As Single

Private Sub ActivateButton_Click()

Counter = Timer
Counter2 = Timer

TL1(2).BackColor = vbGreen
TL1(5).BackColor = vbGreen

Do While Counter < Counter2
Counter2 = Counter2 + Val(GreenTL1.Text)
Loop


TL1(2).BackColor = RGB(51, 153, 0)
TL1(5).BackColor = RGB(51, 153, 0)

End Sub

Agora estou sem tempo, logo venho ca deixar mais info! Thx :]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não percebo o teu codigo, mas o melhor é usares um controlo timer...

porque se to mandas de uma cor, e logo a seguir metes outra... é logico que so aparece a final...

sao nano segundos o tempo entre o processamento de uma tarefa e outra, a menos que exista algo que faça esperar... ai entra o timer...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim o melhor é usar um timer ou então colocas dovents no ciclo. Ex.

Do While Counter < Counter2
    Counter2 = Counter2 + Val(GreenTL1.Text)
    DoEvents
Loop

Testa porque provávelmente é necessário colocar uma pequena pausa (sleep) antes do doevents.

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