PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → thread + tableaffiche("Nomtable")
thread + tableaffiche("Nomtable")
Started by bainarakoto, Apr., 18 2006 3:49 PM - 5 replies
Posted on April, 18 2006 - 3:49 PM
Bonjour à tous;
Je voudrais confirmer mes doutes sur les theads en windev. J'ai utilisé des threads pour rafraichir mes tables sur une fenêtre (il y a 5 tables sur cette fenêtre). Le but étant de fournir une indication à l'utilisateur, chaque fois qu'il vient de créer un enregistrement sur une des tables. Il remplit un formulaire (commande) par exemple, une fois les saisies validées, l'enregistrement de la commande devra s'afficher sur la table commande. Immédiatement après l'application lui demande de fournir les détails de cette commande.
Le problème est qu'à l'encontre de l'instruction "Tableaffiche("Nomtable")", windev plante(il perd la main).
Pensant que le plantage vient de la synchronisation de mes threads; j'ai testé un thread en désactivant le reste. Le problème de plantage revient.
Y aurait-il parmis vous quelqu'un qui a déjà rencontré le même problème? Et qu'est-ce qu'il a fait pour le résoudre?
Posted on April, 18 2006 - 4:33 PM
d'une manière générale, seul le thread principal peut réaliser des mises
à jour dans le GDI (les affichages), donc un second thread qui fait un
tableaffiche ca ne doit pas etre tip-top...

bon dev
eric l.

Jl a écrit :
Bonjour à tous;
Je voudrais confirmer mes doutes sur les theads en windev. J'ai utilisé des threads pour rafraichir mes tables sur une fenêtre (il y a 5 tables sur cette fenêtre). Le but étant de fournir une indication à l'utilisateur, chaque fois qu'il vient de créer un enregistrement sur une des tables. Il remplit un formulaire (commande) par exemple, une fois les saisies validées, l'enregistrement de la commande devra s'afficher sur la table commande. Immédiatement après l'application lui demande de fournir les détails de cette commande.
Le problème est qu'à l'encontre de l'instruction "Tableaffiche("Nomtable")", windev plante(il perd la main).
Pensant que le plantage vient de la synchronisation de mes threads; j'ai testé un thread en désactivant le reste. Le problème de plantage revient.
Y aurait-il parmis vous quelqu'un qui a déjà rencontré le même problème? Et qu'est-ce qu'il a fait pour le résoudre?
Posted on April, 18 2006 - 6:03 PM
Que faudrait-il alors faire pour qu'il y ait un peu plus de convivialité entre mon appli et l'utilisateur? Les "timer" ne sont pas manipulables et je risque d'être limité en fonctionnalités face aux besoins insatiables de mes utilisateurs.
Posted on April, 19 2006 - 9:43 AM
Mathieu

Pour manipuler le GDI à partir d'un thread, tu peut utiliser la fonction
postmessage. De cette manière c'est le thread principal qui se chargera des
fonctions d'affichages.

Mathieu
Posted on April, 19 2006 - 2:40 PM
oh Merci!
ça peut être une solution! A moins que windev ne perde encore la main avec PostMessage()!
Posted on April, 20 2006 - 2:47 PM
Dans un thread secondaire on peut maniuler des objets même si c'est déconseillé... par contre ce qui ne fonctionne pas du tout avec un thread qui remplit une table c'est le code placé à l'affichage d'une ligne!!!!