我有一个函数glutKeyboardFunc(键盘),其中键盘有:
void keyboard(unsigned char key, int x, int y){
float alpha = 1.0;
switch(key){
case 'c':
glClearColor(1,0,0,alpha);
printf("success");
break;
}
}
这是功能的总结;它工作正常,但只有一次其他动作发生。例如,printf语句会立即在击键时报告成功,但在我单击画布上的其他位置之前,背景颜色不会变为活动状态。我希望所有击键都能立即生效。
答案 0 :(得分:2)
您需要刷新屏幕:
void keyboard(unsigned char key, int x, int y){
float alpha = 1.0;
switch(key){
case 'c':
glClearColor(1,0,0,alpha);
printf("success");
glutPostRedisplay(); // trigger the screen redisplay
break;
}
}