J'ai une application SDL et je veux redimensionner la fenêtre. J'ai donc mis un drapeau correct dans SDL_SetVideoMode() et ai fait un gestionnaire d'événement. Mais quand je redimensionne la fenêtre, le gestionnaire n'est pas activé. Je ne sais pas pourquoi.SDL_VIDEORESIZE ne fonctionne pas
Code de ma boucle d'événement:
while (SDL_PollEvent (&event));
{
if (event.type == SDL_QUIT)
return 0+1;
else if (event.type == SDL_VIDEORESIZE)
{
board.x = static_cast<int> (static_cast<float> (event.resize.w - 2 * hMargin)/Field + 0.5f);
board.y = static_cast<int> (static_cast<float> (event.resize.h - 2 * vMargin - Face - FaceSpace)/Field + 0.5f);
return 0;
}
}
return 0 + 1 est pour la sortie réussie (rendements principaux 0); return 0 est pour le redémarrage de l'application (faire un autre SetVideoMode).
Cela ressemble à quand je redimensionne la fenêtre, l'événement n'est pas envoyé. J'utilise la version SDL 1.2.14.
EDIT:
J'ai écrit un exemple de programme, et cela a fonctionné. Mais je l'ai regardé à nouveau le code et ... vu un point-virgule après while() -.-
Pouvez-vous poster un complet, un minimum Programme SDL qui démontre le problème? – genpfault
Oui, semble que ";" est la culpabilité :) –