J'ai fait ce tout petit programme pour savoir ce que renvoyait int
glutGetModifiers() et il se trouve qu'il ne marche qu'a moitié. Le
principe :
Il crée une fenetre openGL, et une console.
Qd la touche t (pour test) est pressé il exécute glutGetModifiers() et affiche ce que cette fonction retourne.
--> Chez moi ça marche pour shift on recupère 1
alt
4
shift +
alt 5
rien
0
mais dès que ctrl est pressé ( ctrl ou ctrl+alt...) ça ne marche plus.
Plus rien. J'ai testé sur deux pc différents) Si quelqu'un pouvait voir
d'ou vient le probleme. Voila le code source :
#include <cstdlib>
#include <iostream>
#include <GL/glut.h>
using namespace std;
// Prototype fonction
void display();
void keyboard(unsigned char,int,int);
// Fonction main
int main(int argc, char *argv[]){
// Initialisation
glutInit(&argc,argv);
glutInitWindowSize(200,200);
glutInitWindowPosition(10,10);
glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH);
glClearColor(0,0,0,0);
glutCreateWindow("SebTest");
// Fonctions de rappel
glutDisplayFunc(display);
glutKeyboardFunc(keyboard);
// Boucle principale
glutMainLoop();
return 0;
}
void display(){
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glutSwapBuffers();
}
void keyboard(unsigned char key,int x,int y){
switch(key){
case 't':
cout<<"glutGetModifiers() retourne
"<<glutGetModifiers()<<endl;
break;
case 'T':
cout<<"glutGetModifiers() retourne
"<<glutGetModifiers()<<endl;
break;
}
}
Et que vive l'utopie du programme qui marche.