2012-04-20 3 views
7

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

ответ

6

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

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

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

+0

или если вы хотите, чтобы переключиться от '' GLFW_WINDOW' к GLFW_FULLSCREEN' вы должны Clode окно первого перед открытием нового. – danijar

3

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

Это было очень полезно! Это + поиск исходного кода для glfw :-) – netpoetica

0

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

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

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

Смежные вопросы