0
我只是想製作一個程序,它顯示一個窗口中有一個框,但是當我運行該程序時,我只能得到5次運行中的窗口顯示。每次執行命令行都會給出適當的響應,並且我在屏幕底部的gnome面板上看到窗口的標題,但窗口本身在大多數時間是不可見的。使用過量創建窗口,但程序不一致
我完全不知道原因可能在哪裏,我想開始尋找。有什麼建議?用gcc main.c中-lglut
我編譯和運行:
#include <stdio.h>
#include <GL/freeglut.h>
void keyb(unsigned char key, int x, int y);
//Window identifier
static int win;
main(int argc, char **argv){
//Initialization
glutInit(&argc, argv);
glutInitWindowSize(500,500);
glutInitWindowPosition(100,100);
win = glutCreateWindow("Test Window");
//Callback
glutKeyboardFunc(keyb);
//OpenGL
glClearColor(0.0,0.0,0.0,0.0);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,1.0,1.0);
glOrtho(-1.0,1.0,-1.0,1.0,-1.0,1.0);
glBegin(GL_POLYGON);
glVertex2f(-0.5, -0.5);
glVertex2f(-0.5, 0.5);
glVertex2f(0.5, 0.5);
glVertex2f(0.5, -0.5);
glEnd();
glFlush();
//Enter main loop
glutMainLoop();
return 0;
}
void keyb(unsigned char key, int x, int y){
printf("Pressed key %c on coordinates %d, %d\n", key, x, y);
if(key == 'q'){
printf("Got q, so qutting\n");
glutDestroyWindow(win);
exit(0);
}
}
謝謝你這麼多! – oadams 2010-09-15 15:12:54