问题标签 [always-on-top]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - 在 Gnome 3、Xfce 和 Unity 下使用 Qt 时,带有子窗口的全屏窗口不会停留在顶部
我有一个基于 Qt 的全屏应用程序。全屏应用程序应始终位于顶部,否则部分窗口将被遮挡。我希望无框全屏窗口有子窗口(特殊对话框,..)。这些子窗口应显示在全屏窗口的顶部。在下面显示它们没有多大意义。
一个简短的、自包含的示例是:
它是用 Python 编写的,并在 Python 3.X + PySide 1.2.2 (Qt 4.8) + Ubuntu 14.04 (Unity desktop) 或 Windows 7 上进行了测试。但是,转换为 C++ Qt(或 PyQt)应该很简单。
观察结果是,在 Windows 上,一切都如开头所述。Qt.WindowsStaysOnTopHint
不是必需的,而在 Ubuntu 上是必需的。
在 Ubuntu 上,我看到最初全屏主窗口位于所有内容之上,但一旦创建子对话框窗口,通常的桌面装饰(顶部和左侧栏)就会显示在全屏主窗口上方,阻碍部分视图!一旦子窗口关闭,全屏窗口就会再次位于顶部。
现在的问题是,是否有什么办法可以让全屏窗口在顶部加上 Ubuntu 和 Qt 上的子窗口?
Windows 和 Linux 之间的不同行为也不令人满意,因为应尽可能避免使用特定于操作系统的代码。
之后:
使用Ubuntu 上可用桌面环境的概述,我安装了几个环境并对其进行了测试。
KDE、Lubuntu (Lxde?) 和 Openbox 按预期工作(对 Windows 也一样)。全屏显示时主窗口位于顶部,子窗口显示在上方。
然而,对于 Gnome-Shell (Gnome 3)、Xfce、Unity 和 Awesome,桌面装饰保持在全屏模式窗口的顶部,也显示子窗口。Xfce 和 Unity 表现完全一样,Gnome 和 Awesome 甚至还有一些额外的小问题。
java - 用于用户输入的 JPanel 应显示在所有其他窗口的顶部
我是 java swing 新手,有一个问题,但首先让我解释一下我的应用程序是做什么的:
在第一次启动时,我的 java web start 应用程序向用户询问用户名和密码,并将它们与 java 首选项 api 一起存储,然后(以及所有其他启动)它在没有任何 gui 的情况下在后台处理所有内容,除非发生错误
我实际上是如何做到的:
像魅力一样工作,我唯一的问题是 JOptionPane 有时会出现在所有其他窗口(如 webbrowser、资源管理器等)的后面。JOptionPane/JPanel 是否有解决方案让窗口出现在所有其他窗口之上?还是 JOptionPane/JPanel 是错误的?我不需要“始终在最前面”的解决方案,只是该窗口出现在所有其他窗口之上。
先感谢您!
c# - 将按钮放在以 C# 形式运行的进程的顶部
我正在表单中运行一个进程,需要用一个按钮覆盖工具栏的一部分。无论我做什么,如果我单击该过程,按钮就会落后。有人可以看看我的代码并提供任何建议吗?谢谢!
python - 打开 URL 并返回 shell
我在 python 3 上运行一个脚本,它使用 webbrowser.open() 打开一个 URL,并立即需要用户的输入。问题是活动窗口现在是浏览器的窗口而不是 python shell,并且总是需要 Alt-Tab 或单击来提供答案。您可以想象成千上万张图像会令人沮丧。代码很简单:
我想有三种方法可以解决这个问题,但我似乎无法为其中任何一种找到实现。我尝试了 webbrowser.open() 命令中的 'autoraise' 选项,但无济于事。我猜这两种解决方案都会非常简单,以至于我之后会大吃一惊。
所以:
解决方案#1:在输入行之前有一个命令,使shell窗口而不是浏览器处于活动状态。
解决方案#2:在后台打开网页,因此永远不会离开外壳。
解决方案#3:给 shell 窗口一个“总是在最前面”的属性。
有任何想法吗?
java - 从 JTabbedPane 更改 JFrame 属性
这是制作框架和选项卡式窗格的类:
这是选项卡式窗格中的一个选项卡:
所以我想要做的是在选项卡中添加一个复选框,允许我将主类中的 JFrame 的属性设置为始终位于顶部。首先,我不明白如何正确调用该方法,以便它改变始终位于顶部的属性。我尝试为它制作一个对象,也尝试将方法设为静态,但它不起作用。
我想知道的是用于方法的修饰符以及如何从 JTabbedPane 内部更改父 JFrame 的属性。
谢谢。
编辑:如果我可以将此复选框添加到 JFrame 本身(如 JTabbed 窗格下方)或其他可以更轻松地使用多个选项卡进行管理的东西,它也会起作用。
c++ - 如何在我的应用程序级别使对话框窗口始终位于最前面
如何在我的应用程序级别使 Qt 对话框窗口始终位于顶部?
我想让一个对话框窗口总是在前面,但记住在我的应用程序级别总是在前面,即使我点击一个空白的地方,我也希望它只停留在我的应用程序的前面。
我曾尝试使用setWindowFlags(Qt::WindowStaysOnTopHint)
,但这使得对话框窗口始终位于桌面级别的顶部,但我希望它仅在我的应用程序级别位于顶部。
我怎样才能做到这一点?
ios - 在现有应用中随处显示新的 iOS UIView
我只是想在现有应用程序的右上角显示一个基本的 UIView。该应用程序非常复杂,有许多不同的视图控制器和布局。什么是创建一次视图并确保它在屏幕上停留在出现的任何其他视图顶部的最简单方法?
我能想到的唯一方法是将视图插入每个视图控制器。但是我需要在整个应用程序中维护相同的视图实例,并且我不想每次我们向应用程序添加新的视图控制器时都必须这样做。
batch-file - 使 cmd 窗口位于其他窗口之上
我正在研究简单的批处理脚本来隐藏用户输入的密码。解决方案是创建一个弹出窗口并更改该弹出窗口的文本颜色。以下是代码,它可以正常工作
我唯一担心的是,当弹出窗口发生时,我可以将它始终设置在主 cmd 窗口的顶部,甚至禁用对主 cmd 窗口的访问(我希望像 Bootstrap Modal 这样的行为)?
感谢阅读,希望能得到您的帮助
c++ - C++ 控制台应用程序总是在最前面?
我不是在寻找:
- 使另一个窗口始终在顶部
- 在顶部制作任何类型的 GUI -对话框等...
但是,我正在寻找一种方法如何使我的简单 C++控制台应用程序始终保持领先,
只是为了清楚起见-我正在寻找一种如何以编程方式执行此操作的方法 :) 我尝试了艰苦的搜索,但只找到了上述内容-什么我不想...
那么有没有办法让你的控制台应用程序在Windows上的 C++ 中以编程方式始终处于顶部?
PS:是的,存在一个具有相应标题的现有问题, 但该问题的 OP 实际上正在寻找其他东西(键盘挂钩,...) - 所以答案与我的问题无关。
解决方案:
快速回答=> 查看@AlexanderVX接受的答案
示例和解释=> 我在下面的答案
java - jOptionPane 不显示在顶部窗口上。Java 1.4
jOptionPane 不显示在顶部窗口上。
我读过使用
应该足够了,但问题是我使用的是 Java 1.4 并且 'setAlwaysOnTop' 不存在。
所以....有没有办法解决这种情况?
提前致谢。
编辑:这是我正在做的事情:
首先我创建一个 JFrame,然后我创建一个新的 JOptionFrame 设置 JFrame。
它仍然显示在后面。请注意,由于 Java 1.4,我不使用 setAlwaysOnTop