Bonjour,

J'ai donc dans le main l'initialisation d'un QWidget contenant intégralement la SDL et d'un QWidget basique comme ceci, mais lors de la fermeture du QWidget SDL, l'autre QWidget se ferme aussi.
Voici le code du main pour l'appel des 2 QWidget et le .cpp du QWidget SDL :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
	FenQtSDL *fenetre = new FenQtSDL();
	fenetre->show();
 
	QWidget *fenetre2 = new QWidget();
	fenetre2->show();
 
    return app.exec();
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "FenQtSDL.h"
 
FenQtSDL::FenQtSDL(QWidget *parent) : QWidget(parent)
{
    setupUi(this);
	char windowid[64];
	#ifdef Q_WS_WIN
		sprintf(windowid, "SDL_WINDOWID=0x%lx", reinterpret_cast<qlonglong>(winId()));
	#elif defined Q_WS_X11
		sprintf(windowid, "SDL_WINDOWID=0x%lx", winId());
	#else
		qFatal("Fatal: cast du winId() inconnu pour votre plate-forme; toute information est la bienvenue!");
	#endif
	SDL_putenv(windowid);
	SDL_Init(SDL_INIT_VIDEO);
	screen = SDL_SetVideoMode(512, 512, 32, SDL_SWSURFACE);
 
 
 
}
 
FenQtSDL::~FenQtSDL()
{
	qDebug( "Console Thread Exited Normally" );
	SDL_FreeSurface( screen );	
	SDL_Quit();
}
A l'inverse, si je ferme le QWidget basique, la fenêtre SDL ne se ferme pas.

Merci d'avance.