Forum de la communauté SFML
Aide => Fenêtrage => Discussion démarrée par: shingo le Mai 02, 2013, 03:11:10 pm
-
Salut, je cherche une façon de désactiver l'écran de veille car lorsque je test pendant un certain temps mon jeu, l'écran de veille se lance. Naturellement, le problème survient uniquement lorsque je joue avec la manette. J'ai un peu cherché sur Google et le forum ainsi que le la documentation mais je n'ai rien trouvé...
Merci
-
Il n'y a aucun moyen de faire ça avec SFML.
-
Ah, il va falloir que je cherche une façon de le faire en C++ en espérant qu'il existe quelque chose de pas trop complexe, merci pour l'info.
-
Si c'est possible, ce sera dans tous les cas avec une fonction spécifique à ton OS, donc non portable.
-
J'ai trouvé pour Windows, ouf c'est relativement simple :
#if defined _WIN32 || _WIN64
SystemParametersInfo(SPI_SETSCREENSAVEACTIVE,FALSE,0, SPIF_SENDWININICHANGE);
#endif
Me reste plus qu'à trouver pour Linux.
Cela ne me pose pas de problème que se soit pas portable étant donné que j'ai écris certaine partie du code pour Windows et Linux. D'ailleurs c'est un plaisir de compiler sans la moindre erreur sous Windows puis sous Linux.
-
Ca, si je ne m'abuse, ça va changer les paramètres globaux de Windows. La façon "propre" de faire c'est de retourner 0 sur les messages WM_SYSCOMMAND de type SCREENSAVER et POWER (truc dans le genre) -- oui, je suis curieux donc je me suis renseigné aussi :P
Mais bon, ce n'est pas faisable facilement avec SFML.
-
Oui, j'ai vu que cela touchait les paramètres globaux de Windows mais étrangement, cela n'a pas affecté mon Windows 7. J'ai essayé l'app plusieurs fois, et j'ai regardé si mon écran de veille était désactivé et s'il se lançait bien comme prévu, et il fonctionne correctement. Naturellement, l'écran de veille ne se lance pas pendant que je joue. Il faudrait que je test sur des machines sous XP pour voir le comportement...
Sinon, effectivement, je vais préférer la solution "propre".