gpt4 book ai didi

java - 全屏 TOPMOST 窗口

转载 作者:太空宇宙 更新时间:2023-11-04 07:42:47 26 4
gpt4 key购买 nike

我正在玩 Java 中的 JFrame。我希望它成为最顶层的窗口,即始终位于最顶层。 setAlwaysOnTop() 工作正常,但一旦我以全屏模式启动电影或游戏窗口,它就无法保持在顶部。

我玩过 JNI 和句柄。我的 JNI C 代码正在使用 SetWindowPos() 并且在我启动全屏应用程序之前这似乎工作正常。这是一个示例:

JNIEXPORT void JNICALL Java_Frame1_setWindowAlwaysOnTop
(JNIEnv *env, jclass obj, jint hwnd, jboolean flag)
{
if (flag)
SetWindowPos((HWND) hwnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
else
SetWindowPos((HWND) hwnd,HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
return;
}

我已经在谷歌上搜索了一段时间,我所确定的是全屏以独占模式运行,并且“暂停窗口系统以便可以直接在屏幕上绘制 ".

任何人都可以提出解决方法吗?顺便提一句。我的 C 不是那么出色,所以放轻松..

谢谢!达摩

最佳答案

“最顶层”仅在窗口环境中有意义。

全屏游戏和电影通常会切换到全屏独占模式。这意味着单个应用程序几乎可以完全控制视频 - 它可以更改分辨率,成为唯一显示的应用程序等。

当另一个应用程序具有全屏独占模式时,即使在“最顶层”,一个窗口应用程序也不会显示,因为不再有窗口概念可用。

关于java - 全屏 TOPMOST 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1935822/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com