PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Exemple de temporisation
  • Conseils
  • Note
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Permet de :
  • effectuer une temporisation,
  • rendre la main à Windows,
  • rendre la main à Windows et au WLangage.
Versions 17 et supérieures
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV pour Linux.
Linux Cette fonction est désormais disponible pour les sites WEBDEV sous Linux.
Nouveauté 17
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV pour Linux.
Linux Cette fonction est désormais disponible pour les sites WEBDEV sous Linux.
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV pour Linux.
Linux Cette fonction est désormais disponible pour les sites WEBDEV sous Linux.
Exemple
// Boucle de calcul
POUR i = 1 A 10000
        ProcédureCalcul(i)
        // On rend la main au système pour afficher les résultats
        Multitâche()
FIN
// Attendre 1 seconde
Multitâche(100)
Syntaxe
Multitâche([<Temporisation>])
<Temporisation> : Entier optionnel ou Durée optionnelle
  • Effectuer une temporisation : <Temporisation> = entier positif.
    L'exécution de l'application est suspendue durant <Temporisation> 100ème de seconde sans rendre la main au système. Les clics de souris et les actions sur les touches du clavier sont ignorés par l'application. Par exemple, la fenêtre peut être déplacée mais pas agrandie.
    Les traitements optionnels des champs sont toujours exécutés.
    Remarque : Si <Temporisation> = 1, l'application rend directement la main à Windows, sans attendre 1 centième de seconde.
    Java La modification de la taille de la fenêtre n'est pas ignorée. Par contre, les clics souris et les actions sur les touches du clavier sont ignorés.
    Linux Les valeurs positives ne sont pas autorisées.
  • Rendre la main au système : <Temporisation> = 0 ou n'est pas indiqué.
    Le système finit les traitements en cours, rend la main à l'application WINDEV, WEBDEV ou WINDEV Mobile, puis prend en compte les clics de souris et les actions sur les touches du clavier.
    Java Si <Temporisation> = 0, la fonction Multitâche est sans effet.
  • Rendre la main à Windows et au WLangage : <Temporisation> = entier négatif.
    L'exécution de l'application est suspendue durant <Temporisation> 100ème de seconde. D'autres traitements peuvent être exécutés durant cette période de temps (ré-affichage ou exécution d'un code de clic par exemple). Les interactions avec l'utilisateur (clics de souris, frappe au clavier, ...) sont gérées normalement.
    Remarque : Si <Temporisation> = -1, l'application rend directement la main à Windows, sans attendre 1 centième de seconde.
Remarque : Ce paramètre peut correspondre à :
  • un entier correspondant au nombre de centièmes de seconde,
  • une variable de type Durée,
  • Versions 23 et supérieures
    l'indication directe de la durée (par exemple '1s' ou '10cs').
    Nouveauté 23
    l'indication directe de la durée (par exemple '1s' ou '10cs').
    l'indication directe de la durée (par exemple '1s' ou '10cs').
Remarques
WINDEV

Exemple de temporisation

L'utilisateur appuie sur la touche Echap avant ou pendant l'appel de la fonction Multitâche :
  • si <Temporisation> est positif : La touche Echap n'est pas prise en compte.
  • si <Temporisation> est égal à 0 : La touche Echap est prise en compte à la fin des traitements WINDEV en cours.
  • si <Temporisation> est négatif : La touche Echap est prise en compte immédiatement.

Conseils

  • Pour rafraîchir l'affichage, il est conseillé d'utiliser la fonction MultitâcheRepeint.
  • Les événements et timers lancés avant l'exécution de la fonction Multitâche sont gérés lors de la temporisation.
  • Dans une application de type Service, la fonction Multitâche doit être remplacée par la fonction ServiceTemporise.

Note

Il est conseillé d'utiliser la fonction ThreadPause à la place des fonctions Multitâche ou Temporisation lorsque plusieurs threads sont utilisés (y compris pour le thread principal de l'application) si la temporisation n'a pas besoin de traiter les actions de l'utilisateur.
Classification Métier / UI : Code UI
Composante : wd250obj.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Ne pas utiliser avec un timer
Ne pas utiliser dans une fonction lancée par timersys().
Relance la fonction (même avec le timer désactivé)
Idem fonction temporisation()
roland
10 nov. 2018