Voila, j'ai un problème que je ne comprends pas. J'ai ce bout de code :
recti tmpsurface;
/// création de la gui
tmpsurface = mSurface;
#ifdef _DEBUG
printf("tmpsurface : %i, %i, %i, %i\n", tmpsurface.LowerRightCorner.X, tmpsurface.LowerRightCorner.Y, tmpsurface.UpperLeftCorner.X, tmpsurface.UpperLeftCorner.Y);
#endif
mWindow = mGUI->addWindow(tmpsurface, false, L"", 0);
La fenetre mWindow n'apparait pas mais le printf affiche les valeurs 0,0,300,600 pour le recti.
Maintenant, si je remplace "tmpsurface = mSurface;" par "tmpsurface = recti(0,0,300,600);", le printf affiche les valeurs 0,0,300,600 et mWindow est affichée!
Donc dans le premier cas : "tmpsurface = mSurface;" et dans le deuxième : "tmpsurface = recti(0,0,300,600);".
Puisque le printf me montre bien que la valeur de tmpsurface est bonne dans les 2 cas, comment se fait-il que mWindow ne s'affiche pas dans le premier cas.
Vu que la valeur de tmpsurface ne peut pas être connu au moment de la compilation, je ne peux pas assigner de valeur fixe. Franchement, je suis dépassé pour un truc si bête. A mon avis, il y a un truc que je ne vois pas mais quoi?
Hors ligne
En fait, j'ai compris.
J'ai du faire "tmpsurface = recti(mSurface.LowerRightCorner, mSurface.UpperLeftCorner);" pour que ça marche.
Dernière modification par johnplayer (29-06-2012 09:26:54)
Hors ligne