Bonjour
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Je m'explique...
Dans une function je gére des événements complétement aléatoires.
Selon ces types d'événements(appelés EV) j'aimerai déclencher des actions
temporisées sans créer de pause dans la fonctions. exemple :
function gereEV()
code
si EV = 1 alors action-1 dans 110 msecondes
si EV = 2 alors action-2 dans 3000 msecondes
...
code
end function
actuellement, les actions sont déclenchées dans la function ce qui crée
une pause dans son déroulement.
Sub Delay(vdp As Single)
tdps = Timer
While (tdps + vdp) > Timer
DoEvents
Wend
End Sub
Function gereEV()
code
si EV = 1 alors delay(0.11) : action-1
si EV = 2 alors delay(3) : action-2
...
code
end function
Avec quoi et comment puis-je arriver à mes fins???
Bonjour
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Je m'explique...
Dans une function je gére des événements complétement aléatoires.
Selon ces types d'événements(appelés EV) j'aimerai déclencher des actions
temporisées sans créer de pause dans la fonctions. exemple :
function gereEV()
code
si EV = 1 alors action-1 dans 110 msecondes
si EV = 2 alors action-2 dans 3000 msecondes
...
code
end function
actuellement, les actions sont déclenchées dans la function ce qui crée
une pause dans son déroulement.
Sub Delay(vdp As Single)
tdps = Timer
While (tdps + vdp) > Timer
DoEvents
Wend
End Sub
Function gereEV()
code
si EV = 1 alors delay(0.11) : action-1
si EV = 2 alors delay(3) : action-2
...
code
end function
Avec quoi et comment puis-je arriver à mes fins???
Bonjour
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Je m'explique...
Dans une function je gére des événements complétement aléatoires.
Selon ces types d'événements(appelés EV) j'aimerai déclencher des actions
temporisées sans créer de pause dans la fonctions. exemple :
function gereEV()
code
si EV = 1 alors action-1 dans 110 msecondes
si EV = 2 alors action-2 dans 3000 msecondes
...
code
end function
actuellement, les actions sont déclenchées dans la function ce qui crée
une pause dans son déroulement.
Sub Delay(vdp As Single)
tdps = Timer
While (tdps + vdp) > Timer
DoEvents
Wend
End Sub
Function gereEV()
code
si EV = 1 alors delay(0.11) : action-1
si EV = 2 alors delay(3) : action-2
...
code
end function
Avec quoi et comment puis-je arriver à mes fins???
"TouTi" <gelapplication[NsP]@tiscali.fr> a écrit dans le message de news:
uxX8A8$$Bonjour
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Je m'explique...
Dans une function je gére des événements complétement aléatoires.
Selon ces types d'événements(appelés EV) j'aimerai déclencher des actions
temporisées sans créer de pause dans la fonctions. exemple :
function gereEV()
code
si EV = 1 alors action-1 dans 110 msecondes
si EV = 2 alors action-2 dans 3000 msecondes
...
code
end function
actuellement, les actions sont déclenchées dans la function ce qui crée
une pause dans son déroulement.
Sub Delay(vdp As Single)
tdps = Timer
While (tdps + vdp) > Timer
DoEvents
Wend
End Sub
Function gereEV()
code
si EV = 1 alors delay(0.11) : action-1
si EV = 2 alors delay(3) : action-2
...
code
end function
Avec quoi et comment puis-je arriver à mes fins???
"TouTi" <gelapplication[NsP]@tiscali.fr> a écrit dans le message de news:
uxX8A8$$GHA.2328@TK2MSFTNGP02.phx.gbl...
Bonjour
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Je m'explique...
Dans une function je gére des événements complétement aléatoires.
Selon ces types d'événements(appelés EV) j'aimerai déclencher des actions
temporisées sans créer de pause dans la fonctions. exemple :
function gereEV()
code
si EV = 1 alors action-1 dans 110 msecondes
si EV = 2 alors action-2 dans 3000 msecondes
...
code
end function
actuellement, les actions sont déclenchées dans la function ce qui crée
une pause dans son déroulement.
Sub Delay(vdp As Single)
tdps = Timer
While (tdps + vdp) > Timer
DoEvents
Wend
End Sub
Function gereEV()
code
si EV = 1 alors delay(0.11) : action-1
si EV = 2 alors delay(3) : action-2
...
code
end function
Avec quoi et comment puis-je arriver à mes fins???
"TouTi" <gelapplication[NsP]@tiscali.fr> a écrit dans le message de news:
uxX8A8$$Bonjour
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Je m'explique...
Dans une function je gére des événements complétement aléatoires.
Selon ces types d'événements(appelés EV) j'aimerai déclencher des actions
temporisées sans créer de pause dans la fonctions. exemple :
function gereEV()
code
si EV = 1 alors action-1 dans 110 msecondes
si EV = 2 alors action-2 dans 3000 msecondes
...
code
end function
actuellement, les actions sont déclenchées dans la function ce qui crée
une pause dans son déroulement.
Sub Delay(vdp As Single)
tdps = Timer
While (tdps + vdp) > Timer
DoEvents
Wend
End Sub
Function gereEV()
code
si EV = 1 alors delay(0.11) : action-1
si EV = 2 alors delay(3) : action-2
...
code
end function
Avec quoi et comment puis-je arriver à mes fins???
>>> J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
>>> J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
>>> J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
Ouaaahhhhh que du bonheur....
Un grand merci jean-marc pour ta rapidité, ton analyse, ta production, tes
commentaires
Encore une petite question... est-on vraiment limité à 20 timers??? En
fait je gère un flux de circulation où tous les 500 millisecondes il peut
y avoir bien plus d'actions à réaliser.
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
Ouaaahhhhh que du bonheur....
Un grand merci jean-marc pour ta rapidité, ton analyse, ta production, tes
commentaires
Encore une petite question... est-on vraiment limité à 20 timers??? En
fait je gère un flux de circulation où tous les 500 millisecondes il peut
y avoir bien plus d'actions à réaliser.
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
Ouaaahhhhh que du bonheur....
Un grand merci jean-marc pour ta rapidité, ton analyse, ta production, tes
commentaires
Encore une petite question... est-on vraiment limité à 20 timers??? En
fait je gère un flux de circulation où tous les 500 millisecondes il peut
y avoir bien plus d'actions à réaliser.
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
Ouaaahhhhh que du bonheur....
Un grand merci jean-marc pour ta rapidité, ton analyse, ta production, tes
commentaires
Encore une petite question... est-on vraiment limité à 20 timers??? En
fait je gère un flux de circulation où tous les 500 millisecondes il peut
y avoir bien plus d'actions à réaliser.
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.
Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
Ouaaahhhhh que du bonheur....
Un grand merci jean-marc pour ta rapidité, ton analyse, ta production, tes
commentaires
Encore une petite question... est-on vraiment limité à 20 timers??? En
fait je gère un flux de circulation où tous les 500 millisecondes il peut
y avoir bien plus d'actions à réaliser.
J'aimerai créer un timer (en lui passant des paramètres) sans qu'il ne
provoque une pause dans le déroulement d'une function.Et bien sur, tout est parafitement asynchrone et uniquement
"event driven": pas de boucles, pas d'attentes, pas de polling.
Ouaaahhhhh que du bonheur....
Un grand merci jean-marc pour ta rapidité, ton analyse, ta production, tes
commentaires
Encore une petite question... est-on vraiment limité à 20 timers??? En
fait je gère un flux de circulation où tous les 500 millisecondes il peut
y avoir bien plus d'actions à réaliser.
voila j'ai fait un test: Ca a crashé après avoir
instancié 9777 Timer...
Je pense que si tu restes en dessous de 1000, tu n'auras
pas de soucis :o)
voila j'ai fait un test: Ca a crashé après avoir
instancié 9777 Timer...
Je pense que si tu restes en dessous de 1000, tu n'auras
pas de soucis :o)
voila j'ai fait un test: Ca a crashé après avoir
instancié 9777 Timer...
Je pense que si tu restes en dessous de 1000, tu n'auras
pas de soucis :o)
Jean Marcvoila j'ai fait un test: Ca a crashé après avoir
instancié 9777 Timer...
Je pense que si tu restes en dessous de 1000, tu n'auras
pas de soucis :o)
Oui bah là ça devrait le faire...
Il ne me reste plus qu'à gérer le passage des paramètres pour les
actions....
Tient.... tant que je t'ai sous la main et que tu me sembles fort à ton
aise :-)) que penses-tu de ma technique : Il n'y aurait-il pas plus
simple (surtout dans GestionnaireEvenements)
Disons que j'envoie :
Tps_Par = NumAction & ":" & NumEng & "[" & ctc & "]" & "$" & dirx & "+" &
diry
bRet = HandleTimerEV( 2, Para)
Private Function HandleTimerEV(delay As Double, Para As String) As Boolean
Dim t As Long
t = GetFreeTimer()
If t <> -1 Then
Load Timer1(t)
Timer1(t).Tag = Para
Timer1(t).Interval = 1000 * delay
Timer1(t).Enabled = True
HandleTimerEV = True
Else
MsgBox "plus de timer disponibles"
HandleTimerEV = False
End If
End Function
au déclenchement
Private Sub GestionnaireEvenements(Para As String)
depo = InStr(1, Para , ":")
croo = InStr(depo + 1, Para , "[")
crof = InStr(croo + 1, Para , "]")
If depo > 0 and croo>0 and crof > Then
evNumber = Val(left(Para , depo - 1))
nloco = Val(Mid(Para , depo + 1, croo - depo - 1))
ctc = Val(Mid(Para , croo + 1, crof - croo - 1))
dloco = Mid(Para , crof + 1)
Select Case evNumber
Case 1: Call posloco nloco, ctc, dloco, -1, ""
Case 2: MsgBox "Suite à évènement 2, action 2"
Case 3: MsgBox "Suite à évènement 3, action 3"
End Select
end if
End Sub
A++
--
Guy
Jean Marc
voila j'ai fait un test: Ca a crashé après avoir
instancié 9777 Timer...
Je pense que si tu restes en dessous de 1000, tu n'auras
pas de soucis :o)
Oui bah là ça devrait le faire...
Il ne me reste plus qu'à gérer le passage des paramètres pour les
actions....
Tient.... tant que je t'ai sous la main et que tu me sembles fort à ton
aise :-)) que penses-tu de ma technique : Il n'y aurait-il pas plus
simple (surtout dans GestionnaireEvenements)
Disons que j'envoie :
Tps_Par = NumAction & ":" & NumEng & "[" & ctc & "]" & "$" & dirx & "+" &
diry
bRet = HandleTimerEV( 2, Para)
Private Function HandleTimerEV(delay As Double, Para As String) As Boolean
Dim t As Long
t = GetFreeTimer()
If t <> -1 Then
Load Timer1(t)
Timer1(t).Tag = Para
Timer1(t).Interval = 1000 * delay
Timer1(t).Enabled = True
HandleTimerEV = True
Else
MsgBox "plus de timer disponibles"
HandleTimerEV = False
End If
End Function
au déclenchement
Private Sub GestionnaireEvenements(Para As String)
depo = InStr(1, Para , ":")
croo = InStr(depo + 1, Para , "[")
crof = InStr(croo + 1, Para , "]")
If depo > 0 and croo>0 and crof > Then
evNumber = Val(left(Para , depo - 1))
nloco = Val(Mid(Para , depo + 1, croo - depo - 1))
ctc = Val(Mid(Para , croo + 1, crof - croo - 1))
dloco = Mid(Para , crof + 1)
Select Case evNumber
Case 1: Call posloco nloco, ctc, dloco, -1, ""
Case 2: MsgBox "Suite à évènement 2, action 2"
Case 3: MsgBox "Suite à évènement 3, action 3"
End Select
end if
End Sub
A++
--
Guy
Jean Marcvoila j'ai fait un test: Ca a crashé après avoir
instancié 9777 Timer...
Je pense que si tu restes en dessous de 1000, tu n'auras
pas de soucis :o)
Oui bah là ça devrait le faire...
Il ne me reste plus qu'à gérer le passage des paramètres pour les
actions....
Tient.... tant que je t'ai sous la main et que tu me sembles fort à ton
aise :-)) que penses-tu de ma technique : Il n'y aurait-il pas plus
simple (surtout dans GestionnaireEvenements)
Disons que j'envoie :
Tps_Par = NumAction & ":" & NumEng & "[" & ctc & "]" & "$" & dirx & "+" &
diry
bRet = HandleTimerEV( 2, Para)
Private Function HandleTimerEV(delay As Double, Para As String) As Boolean
Dim t As Long
t = GetFreeTimer()
If t <> -1 Then
Load Timer1(t)
Timer1(t).Tag = Para
Timer1(t).Interval = 1000 * delay
Timer1(t).Enabled = True
HandleTimerEV = True
Else
MsgBox "plus de timer disponibles"
HandleTimerEV = False
End If
End Function
au déclenchement
Private Sub GestionnaireEvenements(Para As String)
depo = InStr(1, Para , ":")
croo = InStr(depo + 1, Para , "[")
crof = InStr(croo + 1, Para , "]")
If depo > 0 and croo>0 and crof > Then
evNumber = Val(left(Para , depo - 1))
nloco = Val(Mid(Para , depo + 1, croo - depo - 1))
ctc = Val(Mid(Para , croo + 1, crof - croo - 1))
dloco = Mid(Para , crof + 1)
Select Case evNumber
Case 1: Call posloco nloco, ctc, dloco, -1, ""
Case 2: MsgBox "Suite à évènement 2, action 2"
Case 3: MsgBox "Suite à évènement 3, action 3"
End Select
end if
End Sub
A++
--
Guy
> oui je pense qu'il y a plus simple. Pourquoi ne
pas par exemple séparer toutes les valeurs par une virgule,
et récuprérer les éléments avec la fonction Split().
Plus simple, non?
> oui je pense qu'il y a plus simple. Pourquoi ne
pas par exemple séparer toutes les valeurs par une virgule,
et récuprérer les éléments avec la fonction Split().
Plus simple, non?
> oui je pense qu'il y a plus simple. Pourquoi ne
pas par exemple séparer toutes les valeurs par une virgule,
et récuprérer les éléments avec la fonction Split().
Plus simple, non?