Jump to content

Semáforos em VB


FabioSantos
 Share

Recommended Posts

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 :]

Link to comment
Share on other 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...

Got it?

Link to comment
Share on other 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.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.