| 

.NET C# Java Javascript Exception

4
Hallo,

derzeit spiele ich ein bisschen mit C++ und OpenGL herum. Nun habe ich eine Frage zur Tastatureingabe. Ich möchte beim Drücken der Tastenkombination STRG+Q eine bestimmte Aktion ausführen. STRG gehört zu den Modifier keys, welche durch die Funktion glutGetModifiers() genutzt werden kann. Allerdings bekomme ich das nicht zum laufen. Hier mal ein Auszug aus dem Quellcode.

void keyboard(unsigned char, int, int);

...

void keyboard (unsigned char key, int x, int y)
{

if ((glutGetModifiers() == GLUT_ACTIVE_CTRL) && ((key == 'c')))
{
exit(0);
}

switch(key)
{
case 'R': case 'r':
glColor3f(1, 0, 0);
break;
case 'B': case 'b':
glColor3f(0, 0, 1);
break;
}

float x_axis=0.5, y_axis=0.5;

glBegin(GL_QUADS);
glVertex2f(-x_axis, -y_axis);
glVertex2f(-x_axis, y_axis);
glVertex2f(x_axis, y_axis);
glVertex2f(x_axis, -y_axis);
glEnd();
glFlush();
}


Was mache ich hier falsch?

Vielen Dank im Voraus
News:
19.03.2012
MRae 259 1 7
3 Antworten
0
Hallo,

was genau funktioniert denn nicht?
Es ist schon eine weile her, dass ich mal was in OpenGl programmiert habe, deswegen kann ich eigentlich keine qualifizierte Antwort geben.
Was ich aber komisch finde ist, dass du in der Keyboard-Funktion zeichnest. Wie sieht denn deine eigentliche Zeichen-Funktion aus?
20.03.2012
bennygr 53 5
0
Das Problem ist, dass beim drücken der STRG-Taste alleine nichts passiert. Drücke ich diese in Kombination mit einer anderen, dann passt alles. Allerdings möchte ich ja nur die Tastenkombination STRG+C abfangen. Das ich in der Keyboard-Funktion zeichne, ist sicherlich nicht ganz sauber, sollte allerdings kein Problem darstellen.

Martin
20.03.2012
MRae 259 1 7

Stelle deine Cplusplus-Frage jetzt!