Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2011
    Messaggi
    41

    [VB.NET] Fare 2 azioni usando un timer?

    Ciao a tutti! Questo è il mio primo messaggio quindi mi scuso per eventuali eresie...

    Dunque, la mia domanda è questa, posso compiere 2 compiti ognuno ad un tempo designato utilizzando solo un timer?
    Sto provando ma non ci riesco.. Allora:
    Ho messo in una form 3 button, 2 dei quali invisibili. Premendo il button visibile, dopo 2 secondi dovrebbe apparire un button, e 10 secondi dopo un altro button, il tutto usando un solo timer. come faccio? Ho provato (sarà stupido per voi) in questo modo:

    codice:
    Public Class Form1 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    
    Timer1.Enabled = True 
    
    End Sub 
    
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    
    Button2.Visible = True 
    Timer1.Interval = 10000 
    Button3.Visible = True 
    
    End Sub 
    End Class
    OVVIAMENTE non funziona, come potrei fare?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    codice:
        Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
            Static Dim Fase As Integer = 1
    
            Timer1.Enabled = False
    
            If Fase = 1 Then
                Button2.Visible = True
                Timer1.Interval = 10000
                Timer1.Enabled = True
            Else
                Button3.Visible = True
            End If
    
            Fase = Fase + 1
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Timer1.Interval = 2000
            Timer1.Enabled = True
        End Sub
    e se modifichi il codice opportunamente puoi usare un solo timer al posto di 120 ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2011
    Messaggi
    41
    Grazie ma non riesco a capire bene bene il codice... se voglio che il button4 compaia al secondo 15 ad esempio cosa devo fare? (ultima domanda)

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da Catez
    Grazie ma non riesco a capire bene bene il codice... se voglio che il button4 compaia al secondo 15 ad esempio cosa devo fare? (ultima domanda)
    Beh ... pensaci un po' su ... non c'è molto da capire ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2011
    Messaggi
    41
    mmmm ok nel frattempo grazie

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2011
    Messaggi
    41
    ok ho capito, aggiungendo un 4° bottone ho risolto così

    codice:
    Public Class Form1
    
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Timer1.Interval = 2000
            Timer1.Enabled = True
        End Sub
        Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
            Static Dim Fase = 1
    
            Timer1.Enabled = False
    
            If Fase = 1 Then
                Button2.Visible = True
                Timer1.Interval = 10000
                Timer1.Enabled = True
            ElseIf Fase = 2 Then
                Timer1.Enabled = False
                Button3.Visible = True
                Timer1.Interval = 5000
                Timer1.Enabled = True
            ElseIf Fase = 3 Then
                Timer1.Enabled = False
                Button4.Visible = True
            End If
    
            Fase = Fase + 1
        End Sub
    
    End Class
    Grazie mille!

  7. #7
    Utente di HTML.it L'avatar di ShaleN
    Registrato dal
    Aug 2010
    Messaggi
    517
    Be, in questo caso, al posto dell' If avrei usato un Select Case

    Le vie del Signore sono infinite. È la segnaletica che lascia a desiderare.
    La luce viaggia più veloce del suono. Per questo alcune persone sembrano brillanti finchè non parlano.
    Occhio per occhio uguale... occhio al quadrato

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da Catez
    Grazie mille!
    Di nulla ... adesso i tuoi 121 timer li potrai ridurre ad uno solo ...

    P.S. Ovviamente ha ragione ShaleN sulla questione Select Case ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.