是否有可能创建一个固定大小的过剩窗口?

时间:2012-05-21 19:46:11

标签: opengl glut

是否可以使用过剩创建固定大小的窗口,因此对窗口尺寸的任何更改都将被忽略。

对我来说,转回SDL或其他类似的东西已经太晚了。

2 个答案:

答案 0 :(得分:13)

显然,它不可能以合法的方式使用,但您可以在glutReshapeWindow - 回调中使用glutReshapeFunc,在鼠标释放后立即将其快速恢复。这是非常有效的,据我所知,这是最好的解决方案。仅使用freeglut进行测试:

glutReshapeFunc(resize);

void resize(int width, int height) {
    // we ignore the params and do:
    glutReshapeWindow( 800, 600);
}

答案 1 :(得分:6)

最终,没有。您可以做的最好的事情就是调用glutReshapeWindow,以便在检测到它已调整大小时将其强制为特定大小。但那是关于它的。如果你这样做,你需要做一些无限循环预防,确保你只有在新的大小与所需的大小不同时才调用glutReshapeWindow。这不会阻止用户尝试调整其大小,但它会阻止他们成功。可能。

请记住:GLUT专为演示应用程序和简单的测试平台而设计。对于这样的应用程序,调整窗口大小的能力非常标准。