J'ai une application très simple avec un formulaire, un Richedit et un menu. J'essaye d'enregistrer automatiquement le texte sur le richedit et d'effectuer d'autres tâches mais seulement quand l'application est inactive - quand l'utilisateur n'écrit pas ou l'application perd le focus ou peu importe.Exécution d'une action lorsque l'application est inactive
J'ai essayé de créer un gestionnaire d'événements OnIdle
à partir d'un code d'échantillons gazillion trouvés sur Internet, mais il fait le contraire, il active quand je am en utilisant l'application. Ce link est un exemple.
Je ai également truqué avec un minuteur et vérifier quand était la dernière fois que l'utilisateur a écrit sur le richedit, mais je préfère ne pas utiliser un minuteur si possible.
Quelqu'un sait-il détecter qu'une application est inactive et exécuter du code quand c'est le cas? J'utilise delphi 7.
Votre solution sûrement besoin d'une minuterie quelque part: sinon comment allez-vous Spécifiez si «inactif» signifie inactif pendant une milliseconde ou inactif pendant quelques secondes? – frogb
inactif signifie inactif. l'utilisateur ne fait rien. si vous voulez que ce soit pendant 1 sec, puis 1 sec, 1 min, puis une minute. alors choisissez celui qui ne fait pas de différence – Jessica
Une minuterie est le moyen de le faire! Pourquoi ne voulez-vous pas utiliser une minuterie? BTW, enregistrer un petit document RTF sur le disque prend quelques millisecondes; l'utilisateur final ne le remarquerait jamais même si vous l'aviez sauvegardé dix fois par seconde! En outre, un 'TTimer' n'est rien d'étrange Borland-ish, mais seulement un wrapper pour la fonctionnalité native de Win32. –