Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3997 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [XFree 4.3.0] Pb de rafraichissement XEvent

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[XFree 4.3.0] Pb de rafraichissement XEvent

n°552621
xilebo
noone
Posté le 28-10-2003 à 14:52:14  profilanswer
 

J'arrive a la fin du developpement de mon programme et apres l'avoir mis en test, un probleme non mis en evidence vient d'apparaitre.  
 
Il m'arrive parfois d'avoir des événements bloqués ( <> perdus). Je mexplique :
 
Dans mon application, je recupere uniquement les evenements souris que je transmets a mon interface.
 
Pour cela j utilise la fonction XNextEvent() qui bloque tant qu il n y a pas d événement, et qui rend la main dès qu'un événement surgit.
 
Seulement, si je clique tres rapidement sur la souris (evenement clic gauche enfoncé, clic gauche relevé) il arrive parfois que le dernier événement ne soit pas transmis, et au prochain événement, les 2 derniers sont transmis.
 
 
Ex :
 
j appuie sue le bouton gauche de la souris -> evenement MOUSE_DOWN
je relache le bouton gauche de la souris ->RIEN
 
je réappuie sur le bouton gauche de la souris -> evenement precedent MOUSE_UP ET événement MOUSE_DOWN (le dernier quoi).
 
 
Le probleme est que ce phenomene arrive TRES rarement (quasi impossible de le simuler pour debugger) mais il arrive quand meme, et c'est tres génant car ca provoque non seulement des pbs de rafraichissement (bouton resté enfoncé alors qu il est relevé) mais aussi des pbs de synchro par rapport a l action que le bouton est censée faire.
 
 
Quelqu'un a-t-il deja rencontré le pb ? je n'ai pas trouvé de fonction flush ou equivalent pour flusher les messages.
 
 
merci :)

mood
Publicité
Posté le 28-10-2003 à 14:52:14  profilanswer
 

n°552893
xilebo
noone
Posté le 28-10-2003 à 18:36:41  profilanswer
 

up

n°553223
xilebo
noone
Posté le 29-10-2003 à 09:22:47  profilanswer
 

up :sweat:

n°553328
void_ppc
Posté le 29-10-2003 à 10:44:39  profilanswer
 

va demander sur le chan irc des dev de Xfree, tu auras sûrement une réponse :)
 
xfree86 et xfree86-devel sur irc.freenode.net
 
bonne chance !

n°553436
xilebo
noone
Posté le 29-10-2003 à 12:37:53  profilanswer
 

ok je vais voir, merci

n°554503
bounty
Posté le 30-10-2003 à 14:40:13  profilanswer
 

ben sinon comme fct pr flusher: XFlush (a tester)
 
Si tu veux une aide sur l'api xlib:
http://www.the-labs.com/X11/XLib-Manual/
 
en telechargement sur http://www.the-labs.com/X11/xlib-manual.tar.gz
 
Sinon, qu'est ce que tu entends par le fait d'avoir 2 evenement en même tps. Normallement tu ne prends qu' un evenement a la fois ???

n°554572
xilebo
noone
Posté le 30-10-2003 à 15:30:52  profilanswer
 

oui je sais que je prends un seul événement à la fois :)
 
 
Je vais essayer de détailler mon schéma :
 
 
AVANT : x appels a XNextEvent ca a aucune importance ....
 
a un moment donné :
 
J'appuie sur la dalle tactile (qui correspond a l'enfoncement du bouton gauche de la souris) -> Ceci génére un evenement BOUTON_GAUCHE_ENFONCE -> Je le recois bien donc ma boucle XNextEvent traite ce message.
je relache mon appui sur la dalle tactile (qui correspond au relachement du bouton gauche de la souris) -> Ceci est cencé générer un evenement BOUTON_GAUCHE_RELACHE -> Je ne RECOIS pas cet événement (ce qui signifie que je suis toujours bloqué sur XNextEvent dans ma boucle d'événement).
 
je fais a nouveau n'importe quel action après (par exemple appuyer a nouveau n'importe ou a l'écran) -> ceci génére donc un message BOUTON_GAUCHE_ENFONCE -> Je recois D'ABORD mon événement précédent "perdu" (donc le BOUTON_GAUCHE_RELEVE) , je le traite, PUIS je recois (au deuxieme passage de ma boucle d'événement , donc deuxieme appel a XNextEvent) mon message BOUTON_GAUCHE_ENFONCE.
 
 
Je ne sais pas si c est clair mais c est exactement ca qu'il se passe :(
 
 
 

n°568726
xilebo
noone
Posté le 17-11-2003 à 11:02:41  profilanswer
 

up


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [XFree 4.3.0] Pb de rafraichissement XEvent

 

Sujets relatifs
Rafraichissement automatique et "transparent" d'une page web ?[swing] pb rafraichissement scrollpane
[java] rafraichissement jframe + info optimisation [OK]Rafraichissement d'une page
[VB6] PB avec des modales + rafraichissement datagrid[Swing] Question sur GUI, affichage et rafraichissement
XFree , comment utiliser les pixmap (chargement) ?supprimer le "click" d'une frame avec auto rafraichissement
Question pour les ultra baleze de la prog XFreeRafraichissement de site ...
Plus de sujets relatifs à : [XFree 4.3.0] Pb de rafraichissement XEvent


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)