我在我的代码中使用以下函数。它在屏幕上为任何模式打印所需的消息。问题是当我第二次调用我的函数在窗口上打印新内容时,它会覆盖以前的消息。如何在编写新内容之前清除我之前编写的内容?
void output(float r, float g, float b,int mode )
{
glColor3f( r, g, b );
glRasterPos2f(25, 25);
int len, i;
char string1[50] = "Edit Mode Enabled";
char string2[50] = "Edit Mode Disabled";
char string3[50] = "Delete Mode Enabled";
char string4[50] = "Delete Mode Disabled";
char string[50];
switch(mode)
{
case 1: strcpy(string,string1); break;
case 2: strcpy(string,string2); break;
case 3: strcpy(string,string3); break;
case 4: strcpy(string,string4); break;
}
cout << string <<endl;
len = (int)strlen(string);
for (i = 0; i < len; i++) {
glutBitmapCharacter(GLUT_BITMAP_HELVETICA_10, string[i]);
}
}