GLFW переключение оконного-полноэкранный режим

Я использую GLFW, и я хотел бы знать, как переключать полноэкранный оконный режим. Не изменяя разрешение, а вместо этого устанавливая окно, чтобы быть сверху и без украшения. Если GLFW не способен сделать это, то какую кросс-платформенную библиотеку вы предлагаете для этого?

3 ответов


вы можете сказать, glfw, чтобы открыть окно на весь экран.

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

насколько я знаю, вы должны закрыть и снова открыть это окно для переключения между оконным и полноэкранным режимом.


чтобы избежать изменения разрешения экрана 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
}

начиная с версии 3.2:

окна оконного режима можно сделать полноэкранным, установив монитор с glfwSetWindowMonitor, и полноэкранные одни можно сделать windowed сбросив его с помощью той же функции.

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