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

Auteur Sujet: Probleme avec des MouseButton [EVENT]  (Lu 1555 fois)

0 Membres et 1 Invité sur ce sujet

hastaris

  • Newbie
  • *
  • Messages: 1
    • Voir le profil
    • E-mail
Probleme avec des MouseButton [EVENT]
« le: Mai 23, 2017, 04:40:57 pm »
Salut a tous !

En gros , j'ai un soucis avec l'Event
Bon ... j'ai un soucis avec SFML , je code en 2.4.2 , sous visual studio 2012 en C++ .
J’essaie de créer un petit jeu de bataille naval et j'ai été trés satisfait pour le moment , une biblio très sympa a vrai dire ! jusqu’à ce que je fasse gérer les Event 
j'ai beau suivre le tuto officiel et me débrouiller je trouve pas du tout (https://www.sfml-dev.org/tutorials/2.4/index-fr.php)

Il semblerai que l'event se produise en boucle , j'ai donc créer un petit code pour confirmer mes soupçons , que voici :
int main()
{
        const int margeFen = 70 ;
        const int tailleCase = 40 ;
        const int margeTabl = 40 ;
        const int nbCase = 10 ;
        int compteur = 0 ;
        vector<RectangleShape> debugg ;

    RenderWindow window(VideoMode((margeFen*2) + (tailleCase*nbCase*2)+margeTabl, (margeFen*2) + tailleCase*nbCase), "Battaille Naval");

    while (window.isOpen())
    {
        Event event;
        while (window.pollEvent(event))
        {
            if (event.type == Event::Closed)
                window.close();
        }

                if(event.type == sf::Event::MouseButtonReleased)
                {
                        if (event.mouseButton.button == sf::Mouse::Right)
                        {
                                RectangleShape rect(Vector2f(50 , 50));
                                rect.setFillColor(Color::Yellow);
                                rect.setPosition( 60*compteur , 100 );
                                compteur++;
                                debugg.push_back(rect);
                        }
                }

        window.clear();
               
//-----------[DRAWING]-->[DEBUT]----------
                for (int i = 0 ; i < debugg.size() ; i++)
                {
                        window.draw(debugg.at(i));
                }

//------------[DRAWING]-->[FIN]-----------

        window.display();
    }

    return 0;
}
 

et en un clic droit , j'obtient une bande compléte de carré jaune , ce qui veux dire qu'il se répète en boucle ? je ne trouve rien a vrai dire ... et je sèche xDDD : comment éviter cette répétition ?

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re: Probleme avec des MouseButton [EVENT]
« Réponse #1 le: Mai 23, 2017, 09:55:51 pm »
Laurent Gomila - SFML developer