PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Erreur interne du framework WDJava
Erreur interne du framework WDJava
Débuté par mechwalid, 08 avr. 2013 14:44 - 4 réponses
Membre enregistré
26 messages
Posté le 08 avril 2013 - 14:44
Bonjour, lorsque je tente de modifier le contenu d'un champ d'une fenêtre depuis une fonction s'exécutant dans un second thread, j'ai le message suivant:

Erreur interne du framework WDJava.
: Only the original thread that created a view hierarchy can touch its views.

Comment remédier à ce problème ?

Merci
Posté le 08 avril 2013 - 17:34
Bonjour

c'est le comportement normal du multi-thread... UN thread s'occupe de
l'affichage, les autres font des traitements en tache de fond...

Dans ton cas, il faut donc que tes deux threads communiquent. Tu peux
(par exemple) mettre tes nouvelles infos dans une variable globale (ou
un tableau de variables, si nécessaire)

Le thread principal/d'affichage utilise un timer pour surveiller cette
variable/tableau et si il y a quelque chose dedans, fais l'affichage,
puis vide la variable/tableau


Cordialement


--
Fabrice Harari
Consultant WinDev, WebDev et WinDev Mobile International

Plus d'information sur http://fabriceharari.com/index_FR.html

On 4/8/2013 8:42 AM, mechwalid wrote:
Bonjour, lorsque je tente de modifier le contenu d'un champ d'une fenêtre depuis une fonction s'exécutant dans un second thread, j'ai le message suivant:

Erreur interne du framework WDJava.
: Only the original thread that created a view hierarchy can touch its views.

Comment remédier à ce problème ?

Merci

Posté le 08 avril 2013 - 18:56
Ou utiliser la fonction ExecuteThreadPrincipal pour tous les traitements qui touchent à l'IHM
Membre enregistré
26 messages
Posté le 09 avril 2013 - 12:33
merci Fabrice Harari
j'ai créer un variable globale ( pour que je modifie l'affichage des champs lors de la modification de ce variable ) mais j'ai été déçu de que le thread ne gere ni un champ ni un variable qui n'est pas créer dans le thread (meme si le variable est globale) :(
Membre enregistré
26 messages
Posté le 09 avril 2013 - 12:36
j'ai rencontré cette solution pas de fois mais ça ne marche pas (Remarque :le probleme existe que lorsque je teste l'application sur tablette android mais lors de test avec emulateur windev tous est bien )