Bor*_*ris 2 c++ windows opengl glfw
我正在创建一个这样的OpenGL窗口:
auto mode = glfwGetVideoMode(monitor);
mWindowWidth = mode->width;
mWindowHeight = mode->height;
glfwWindowHint(GLFW_RED_BITS, mode->redBits);
glfwWindowHint(GLFW_GREEN_BITS, mode->greenBits);
glfwWindowHint(GLFW_BLUE_BITS, mode->blueBits);
glfwWindowHint(GLFW_REFRESH_RATE, mode->refreshRate);
mWindow = glfwCreateWindow(mWindowWidth, mWindowHeight, "Test", monitor, NULL);
Run Code Online (Sandbox Code Playgroud)
这样可以正常工作,除了一个主要缺陷:当我关注另一个窗口时(即使它在另一个监视器上!)GLFW窗口在后台消失.
如何创建一个始终位于给定监视器顶部的(全屏)GLFW窗口?
看来焦距损失的自动最小化由GLFW_AUTO_ICONIFY提示控制,默认情况下启用.
GLFW_AUTO_ICONIFY指定全屏窗口是否会在输入焦点丢失时自动图标化并恢复上一个视频模式.
窗口模式窗口会忽略此提示.
它可以被禁用:
glfwWindowHint(GLFW_AUTO_ICONIFY, 0);
Run Code Online (Sandbox Code Playgroud)
有关GLFW的文档,请访问http://www.glfw.org/docs/latest/window_guide.html#window_windowed_full_screen
从上面的链接
GLFW_AUTO_ICONIFY指定全屏窗口是否会在输入焦点丢失时自动图标化并恢复上一个视频模式.窗口模式窗口会忽略此提示.
GLFW_TRUE
GLFW_TRUE or GLFW_FALSE
设置为 GLFW_FALSE
那是
glfwWindowHint(GLFW_AUTO_ICONFIY, GLFW_FALSE);
Run Code Online (Sandbox Code Playgroud)
需要注意的是GLFW_TRUE与GLFW_FALSE现在和将来永远是公正1和0.
| 归档时间: |
|
| 查看次数: |
563 次 |
| 最近记录: |