J'ai utilise l'evenement OnIdle de TApplication pour lancer une procedure d'arriere-plan mais je n'arrive pas a l'arreter car elle se lance tout le temps et moi je voudrais qu'elle ne se lance qu'une fois.
Comment faire ????
Merci pour tout.
J'ai utilise l'evenement OnIdle de TApplication pour lancer une procedure d'arriere-plan mais je n'arrive pas a l'arreter car elle se lance tout le temps et moi je voudrais qu'elle ne se lance qu'une fois.
Comment faire ????
Merci pour tout.
si tu ne nous donne pas + de détails, ça ne va pas être facile de t'aider.
Que fait cette tache, comment est-elle codée ?
Bonjour,
Voici une Solution simple:
Cordialement Laurent
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 const Go: Boolean = True; // Variable initialisée procedure TForm1.FormCreate(Sender: TObject) begin ... Application.OnIdle:= MyIdleHandler; ... end; procedure TForm1.MyIdleHandler(Sender: TObject; var Done: Boolean) begin if Go then begin ExecuteTask; Go:= False; end; .... end; procedure TForm1.ExecuteTask begin .... end;
salut laurent,
Pb dans ton source : tu déclares Go comme une constante et tu modifies ensuite la valeur pour la mettre à False, il me semble que modifier la valeur d'une constante entraine une exception...
Go doit être une variable.
bienvenus au club des Grosses ruses Delphi : une constante typée est traitée vomme une variable par le compilo.
En effet, Go est déclarée avec Const, mais dans ce cas, ce n'est pas une vrai constante, mais une variable initialisée !
Par conséquent, tu peut modifiée sa valeur.
Ceci est l'équivalent d'une variable C++ déclarée static
Bonne continuation
Laurent
j'ai appris quelque chose de nouveau.
merci les gars.
quoiqu'il en soit, ça va à l'encontre de toute logique mais ça peut etre bien pratique pour initialiser la variable directement lors de sa déclaration...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager