PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → Timer dynamique
Timer dynamique
Iniciado por a.petitjean, jul., 12 2005 7:38 PM - 5 respostas
Publicado em julho, 12 2005 - 7:38 PM
Bonjour,

Mon problème est simple à expliquer :
Je voudrais éxécuter une tache de façon pseudo-périodique :
Elle lancerais une procedure au bout d'un temps T, puis se répéterais infiniment. Seuleument, selon le résultat du traitement de la procedure, je veux pouvoir modifié ce temps T.

J'ai essayé avec un Timer prenant en paramètre une variable globale que je modifie, mais rien n'y fait.

Si quelqu'un a une solution ou une piste ...
Publicado em julho, 12 2005 - 6:29 PM
Salut,

pour modifier la fréquence de ton timer, tu dois le terminer et le recréer.
Tu peux le faire dans la fonction du timer même:
//Initialisation de mon projet
iDTimer est un entier = TimerSys("MaFonction",100)


Procedure MaFonction()
iNouveauTemp est un entier
iRetour est un entier = mafonction()
selon iretour
cas 1:
iNouveauTemps = 100
cas 2:
iNouveauTemps = 200
cas 3:
iNouveauTemps = 300
autre cas:
iNouveauTemps = -1
fin
Si iNouveauTemps <> -1
FinTimerSys(iDTimer )
iDTimer = TimerSys("MaFonction",iNouveauTemps)
Fin

J'espère que ça répond à ta question.

Mathieu
"Alexandre Petitjean" <a.petitjean@esigelec.fr> a écrit dans le message de
news: 42d3d91e$1@news.pcsoft.fr...

Bonjour,

Mon problème est simple à expliquer :
Je voudrais éxécuter une tache de façon pseudo-périodique :
Elle lancerais une procedure au bout d'un temps T, puis se répéterais
infiniment. Seuleument, selon le résultat du traitement de la procedure,
je veux pouvoir modifié ce temps T.

J'ai essayé avec un Timer prenant en paramètre une variable globale que je
modifie, mais rien n'y fait.

Si quelqu'un a une solution ou une piste ...
Publicado em julho, 13 2005 - 10:40 AM
bonjour,

quand le timer renvoie un résultat, il suffit d'appeler une procédure qui met fin au timer et qui le relance avec une nouvelle périodicité
Publicado em julho, 13 2005 - 10:57 AM
Alexandre Petitjean a écrit :
Bonjour,

Mon problème est simple à expliquer :
Je voudrais éxécuter une tache de façon pseudo-périodique :
Elle lancerais une procedure au bout d'un temps T, puis se répéterais infiniment. Seuleument, selon le résultat du traitement de la procedure, je veux pouvoir modifié ce temps T.

J'ai essayé avec un Timer prenant en paramètre une variable globale que je modifie, mais rien n'y fait.

Si quelqu'un a une solution ou une piste ...

salut
en faisant une variable global que tu incrementes dans ton timer et que
tu compares a T constante globale
Publicado em julho, 13 2005 - 1:05 PM
Ca me semble être une bonne solution.
Merci beaucoup
Publicado em julho, 13 2005 - 1:06 PM
Merci à Tous, la solution de tuer le timer puis de le recréer est tout juste ce qu'il me faut.