Bonsoir.
Je cherche à gérer une fenêtre par une classe du genre :
Classe :
#include <SFML/System.hpp>
#include <SFML/Graphics.hpp>
class Window : public sf::RenderWindow
{
public :
Window();
sf::Sprite getSprite(); // Renvoie le sprite de la fenetre.
private :
sf::RenderWindow m_window; // Render Window.
sf::Texture m_texture; // Texture contenant la feuille de tuiles.
sf::Sprite m_sprite; // Sprite contenant et affichant la texture.
};
Méthodes :
Window::Window()
{
// Cree une fenetre.
m_window.create(sf::VideoMode(400,350),"My Window");
// Chargement de la texture de présentation.
m_texture.loadFromFile("image.png");
// Incorporation de la texture dans le sprite.
m_sprite.setTexture(m_texture);
}
sf::Sprite Window::getSprite()
{
return m_sprite;
}
main :
int main(int argc, char *argv[])
{
Window myWindow;
while (myWindow.isOpen())
{
sf::Event event;
while (myWindow.pollEvent(event))
{
if (event.type == sf::Event::Closed)
{
myWindow.close();
}
}
myWindow.clear();
myWindow.draw(myWindow.getSprite());
myWindow.display();
}
return 0;
}
À la compilation il n'y a pas de problèmes, mais lors de l'exécution la fenêtre s'ouvre puis se ferme immédiatement. Est-ce que je m'y prend mal ?
Merci.