OVH Cloud OVH Cloud

FonctionTimer dans une classe

3 réponses
Avatar
Jérôme Bunel
Bonjour,
je voudrais intéger une fonctionnalité Timer (même fonctionnement que le
controle VB) à l'intérieur d'une classe.
J'ai bien essayer avec l'api windows SetTimer, KillTimer mais impossible
d'utiliser l'instruction AdressOf dans un module de classe.

Quelqu'un a une idée ?

Merci

3 réponses

Avatar
Zoury
> J'ai bien essayer avec l'api windows SetTimer, KillTimer mais impossible
d'utiliser l'instruction AdressOf dans un module de classe.

Quelqu'un a une idée ?



La fonction visée est bien publique ?

--
Cordialement
Yanick
MVP pour Visual Basic
Avatar
JEROME BUNEL
Les fonction SetTimer et KillTimer sont bien publiques car elle font partie
de la librairie user32.dll.

Le problème est que lorsqu'on appelle SetTimer il faut lui filer l'adresse
de la fonction à appeler lorsque l'evenement Timer se produit.
Pour cela on utilise le mot cle "Addressof" :

Call SetTimer(0, 0, 60000, AddressOf TimerEvent)

Mais VB refuse l'utilisation de cette instruction dans un module de classe.




"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news:
J'ai bien essayer avec l'api windows SetTimer, KillTimer mais impossible
d'utiliser l'instruction AdressOf dans un module de classe.

Quelqu'un a une idée ?



La fonction visée est bien publique ?

--
Cordialement
Yanick
MVP pour Visual Basic




Avatar
Zoury
Salut Jérôme!

J'ai mal ta première question, je croyais que tu parlais d'un module tout
court. Tu ne peux effectivement pas utilisé AddressOf sur une méthode de
classe. Tu devras mettre ta TimerProc() dans un module à part (et déclarée
public).

--
Cordialement
Yanick
MVP pour Visual Basic
"JEROME BUNEL" a écrit dans le message de
news:cvd0s6$nc9$
Les fonction SetTimer et KillTimer sont bien publiques car elle font


partie
de la librairie user32.dll.

Le problème est que lorsqu'on appelle SetTimer il faut lui filer l'adresse
de la fonction à appeler lorsque l'evenement Timer se produit.
Pour cela on utilise le mot cle "Addressof" :

Call SetTimer(0, 0, 60000, AddressOf TimerEvent)

Mais VB refuse l'utilisation de cette instruction dans un module de


classe.




"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news:
>> J'ai bien essayer avec l'api windows SetTimer, KillTimer mais


impossible
>> d'utiliser l'instruction AdressOf dans un module de classe.
>>
>> Quelqu'un a une idée ?
>
> La fonction visée est bien publique ?
>
> --
> Cordialement
> Yanick
> MVP pour Visual Basic
>
>