7

我正在使用 GLFW,我想知道如何切换全屏窗口模式。不改变分辨率,而是将窗口设置在顶部并且没有装饰。如果 GLFW 无法做到这一点,那么您建议使用什么跨平台库来实现这一点?

4

3 回答 3

6

你可以告诉 glfw 全屏打开你的窗口。

glfwOpenWindow( width, height, 0, 0, 0, 0, 0, 0, GLFW_FULLSCREEN )

据我所知,您必须关闭并重新打开此窗口才能在窗口和全屏模式之间切换。

于 2012-05-20T18:25:31.303 回答
4

为避免 GLFW 更改屏幕分辨率,您可以使用 glfwGetDesktopMode 查询当前桌面分辨率和颜色深度,然后将它们传递给 glfwOpenWindow。

// get the current Desktop screen resolution and colour depth
GLFWvidmode desktop;
glfwGetDesktopMode( &desktop );

// open the window at the current Desktop resolution and colour depth
if ( !glfwOpenWindow(
    desktop.Width,
    desktop.Height,
    desktop.RedBits,
    desktop.GreenBits,
    desktop.BlueBits,
    8,          // alpha bits
    32,         // depth bits
    0,          // stencil bits
    GLFW_FULLSCREEN
) ) {
    // failed to open window: handle it here
}
于 2013-02-26T21:41:13.567 回答
2

从 3.2 版开始:

窗口模式窗口可以通过使用 glfwSetWindowMonitor 设置监视器来全屏,全屏窗口可以通过取消设置来设置窗口。

http://www.glfw.org/docs/latest/window.html

于 2017-11-27T21:10:15.257 回答