|
| Iniciado por Nicolas, 13,ene. 2020 13:34 - 1 respuesta |
| |
| | | |
|
| |
Miembro registrado 54 mensajes |
|
| Publicado el 13,enero 2020 - 13:34 |
Bonjour à tous,
Voilà, dans mon application, j'ai souvent des tables qui se remplissent suite au clic sur un bouton "Actualiser". Suivant les filtres renseignés par l'utilisateur, les temps de traitement peuvent être plus ou moins long. C'est la raison pour laquelle je fais apparaître une jauge fabriqué main dans laquelle il y a en fait deux jauges : une pour le traitement global et une pour chaque traitement spécifique du bouton "Actualiser". Globalement, ma jauge marche bien, sauf que sur celle-ci, j'y ai inclus un bouton "Annuler" sur lequel les utilisateurs peuvent cliquer pour annuler le traitement. Seulement voilà, mon problème est ici, je n'arrive pas à intercepter le clic sur le bouton annuler de ma jauge (qui est en fait une fenêtre qui s'ouvre en popup) pour qu'il soit pris en compte dans mon traitement principal et que tout s'arrête.
J'espère avoir été assez clair.
Je vous remercie par avance pour toutes vos réponses.
Nicolas |
| |
| |
| | | |
|
| | |
| |
| Publicado el 14,enero 2020 - 09:54 |
Bonjour, Si le traitement est effectué dans le thread principal, qu'il est lent et sans "pause" alors c'est normal que l'événement du clic soit non pris en compte. Il faut adapter le code ci-dessous et l'ajouter dans ta boucle qui remplit ton champ table :
SI (ThreadCourant() = "") ALORS SI EnModeService() ALORS ServiceTemporise(1) SINON Temporisation(1, tempoSourisEtClavier) FIN SINON ThreadPause(1) FIN Au besoin tu peux aussi utiliser cette propriété :
<NomChampTable>..AffichageActif = Faux ... <NomChampTable>..AffichageActif = Vrai |
| |
| |
| | | |
|
| | | | |
| | |
|