Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: [Résolu] waitEvent / pollEvent  (Lu 2017 fois)

0 Membres et 1 Invité sur ce sujet

Visor

  • Newbie
  • *
  • Messages: 21
    • Voir le profil
[Résolu] waitEvent / pollEvent
« le: Janvier 01, 2015, 06:29:24 pm »
Bonsoir,

je n'arrive pas à bien utiliser waitEvent ou pollEvent pour récupérer du texte tapé par l'utilisateur.

J'ai testé avec pollEvent dans la boucle de mon jeu jeu (j'ai une fsm), mais l'event ne détecte qu'un char sur dix. J'ai tenté de placer le pollEvent au début de la fsm mais ça me bloque le jeu si je n'ai pas d'input (ce qui est logique).
Pour contourner ce problème j'ai créé un nouveau thread pour qu'il puisse tourner en boucle avec waitEvent, mais si la fenêtre ne perds pas puis récupère le focus en permanence, la boucle semble se mettre en pause.

                while (WINDOW->waitEvent(m_event))
                {
                        if (m_event.type == sf::Event::TextEntered)
                                if (m_event.text.unicode < 128)
                                        m_strInput += static_cast<char>(m_event.text.unicode);
                }
 
(le sf::event est dans un singleton)

Je commence à tourner en rond, sans trouver de réelle solution.
Quelqu'un aurait une idée, ou ne ce serait-ce qu'une voie ?
« Modifié: Janvier 01, 2015, 07:45:41 pm par Bloo »

G.

  • Hero Member
  • *****
  • Messages: 1592
    • Voir le profil
Re : waitEvent / pollEvent
« Réponse #1 le: Janvier 01, 2015, 07:08:26 pm »
Tu as dû mal faire quelque chose.
Déjà si tu arrives pas à le faire en un seul thread, ne tente pas en plusieurs, ça résoudra rien bien au contraire. :D Si t'as une window, il te faut qu'une seule boucle pollEvent.

Essaie déjà de faire marcher ça en un seul thread dans un programme à part, épuré de tout ce qui n'a rien à voir avec ton TextEntered. Par exemple t'as un m_StrInput, on sait pas ce que tu en fais, ça pourrait très bien être là que ça merde. Ou n'importe où ailleurs dans le programme, on peut pas savoir.

Visor

  • Newbie
  • *
  • Messages: 21
    • Voir le profil
Re : waitEvent / pollEvent
« Réponse #2 le: Janvier 01, 2015, 07:38:00 pm »
En effet, mon soucis était de tenter d'utiliser deux poll/waitEvent en même temps.

Merci =)

 

anything