codice:
Private Sub Form_Load()
If (MessageInformation = "") Then
MessageInformation = "Wait for a reset message from Administration system (cVidya)."
timerFlag = 1
End If
pgbTempo.Max = Timer1.Interval
txtMessage.text = MessageInformation
End Sub
Private Sub Timer1_Timer()
If (timerFlag = 1) Then
Call resetWait
timerFlag = 3
txtMessage.text = "Received Reset message from Administration system (cVidya)."
ElseIf (timerFlag = 2) Then
Call receive_message
txtMessage.text = "Received Reset message from Administration system (cVidya)."
timerFlag = 3
ElseIf (timerFlag = 3) Then
pgbTempo.Value = pgbTempo.Value + 1
If pgbTempo.Value = Timer1.Interval Then
Unload Me
frmSIA.Show
End If
End If
End Sub
Ho una form che uso tipo messagebox.
Ho inserito un timer perchè ho un flusso di programma che deve essere continuativo e si ferma solo nel momento in cui mando a video dei messaggi, si fermano per qualche secondo per visualizzarli e poi svaniscono per continuare con altre operazioni.
Spiego il codice:
la variabile messageinformation è una var globale che ogni volta cambio a seconda del messaggio che voglio visualizzare a video.
Il timerflag è anch'esso una variabile che mi serve per: la prima volta per visualizzare il messaggio di wait nel momento in cui parte il programma e poi la metto a 3 per far si che cicli il tempo del timer.
Poi metto il flag a 2 fuori da questa finestra(un'altra form con tutto iol flusso del mio programma) per farlo successivamente e sempre entrare dove il fglag è 2 perchè da quel momento in poi richiamerò sempre la funzione receive_message.
Nel momento il cui però richiamo la finestra dove è inserito questo codice per la seconda volta il timer non viene chiamato.