Salut,
J'ai utilisé Qt 5.0.2, SFML-2.0-rc-windows-32-gcc4-sjlj, et QtCreator. Mais, lorsque j'ai voulu lancer l'exécutable, j'ai eu une fenêtre blanche suivie d'un plantage disant que le programme avait cessé de fonctionner. Voici le code du programme :
main.cpp
#include "mainwindow.h"
#include <QApplication>
#include <QFrame>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QFrame* MainFrame = new QFrame;
MainFrame->setWindowTitle("Qt SFML");
MainFrame->resize(360, 360);
MainFrame->show();
MainWindow w(MainFrame, QPoint(20, 20), QSize(360, 360));
w.show();
return a.exec();
}
mainwindow.cpp :
#include "mainwindow.h"
MainWindow::MainWindow(QWidget* Parent, const QPoint& Position, const QSize& Size) :
QSFMLCanvas(Parent, Position, Size)
{
}
MainWindow::~MainWindow()
{
}
void MainWindow::OnInit()
{
//texte = sf::Text("Bonjour");
}
void MainWindow::OnUpdate()
{
/*sf::Event event;
while(pollEvent(event))
{
}
clear(sf::Color(255, 0, 0));*/
//draw(texte);
}
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QSFMLCanvas.h>
class MainWindow : public QSFMLCanvas
{
Q_OBJECT
public:
MainWindow(QWidget* Parent, const QPoint& Position, const QSize& Size);
~MainWindow();
private:
//sf::Text texte;
void OnInit();
void OnUpdate();
};
#endif // MAINWINDOW_H
Le programme utilise une bibliothèque externe contenant la classe QSFMLCanvas entièrement copiée collée du tutoriel sauf une ligne à cause de laquelle la compilation de la bibliothèque ne fonctionnait pas :
sf::Window::create(winId()); // compilation impossible (erreur de conversion)
sf::Window::create((sf::WindowHandle)winId()); // compilation possible
J'aimerais savoir d'où vient l'erreur et comment la corriger.
Merci d'avance !