Récapitulons :
- Les fenêtres sont en mode "Fenêtre libre"
J'ai testé en mode MDI Mère et fille, ça fonctionne aussi.- La fenêtre Mère appelle la procédure locale suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 PROCÉDURE TraitementLong() nNoChrono est entier nNoEtape est entier nNoChrono=1 ChronoDébut(nNoChrono) OuvreFille(FEN_Affiche_chrono,nNoChrono) POUR nNoEtape=1 À 4 FEN_Affiche_chrono.LIB_Info=ChaîneConstruit("Étape %1",nNoEtape) Multitâche(200) //Simule le traitement FIN Ferme(FEN_Affiche_chrono)- La fenêtre d'affichage (FEN_Affiche_chrono) comporte les codes suivants
- Déclaration
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 PROCÉDURE FEN_Affiche_chrono(gnNoChrono est entier=1)- Fin d'initialisation
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 AfficheChrono(LIB_Chrono..NomComplet,gnNoChrono)- Fermeture
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ChronoFin(1) FinAutomatismeProcédure(AfficheChrono)- AfficheChrono est une procédure globale automatique réglée comme suit:
- Type
Timer/Procédure différée- Comment
Nombre de fois : Infini
Espacement : 00:00:00:10
En cas de rappel de la procédure : Ignorer le timer ...- Quand
Immédiatement au moment de l'appel- Code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 PROCÉDURE AfficheChrono(sLibellé est chaîne,nNoChrono est entier) chLibellé est Champ sChronoAffiché est chaîne duDuréeChrono est Durée chLibellé<-{sLibellé,indChamp} duDuréeChrono..EnMillisecondes=ChronoValeur(nNoChrono) sChronoAffiché=DuréeVersChaîne(duDuréeChrono,"HH:MM:SS:LL") chLibellé..Libellé=sChronoAffiché
Partager