PyQt:始终位于顶部

发布于 2024-08-15 01:53:59 字数 178 浏览 3 评论 0原文

这是在 PyQt4、Linux 和 Python 2.5 上

我可以让 PyQt 将我的窗口设置为“始终位于顶部”而不是其他应用程序吗?

例如,在 GTK 中我使用属性:Modal。

现在,在 PyQt 中我使用 QWidget,但是,我找不到方法来做到这一点。

有什么想法吗?

This is on PyQt4, Linux and Python 2.5

Can I make PyQt set my window "always on top" over other applications?

For example, in GTK i use the property: Modal.

Now, in PyQt I am using a QWidget, but, I can't find a way to do that.

Any ideas??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

牵你手 2024-08-22 01:53:59

向 QMainWindow 传递 WindowStaysOnTopHint 窗口标志 (或使用 setWindowFlags)。

正如名称所示,这是对窗口管理器的提示(不是硬性保证)。

最简单的例子:

import sys
from PyQt4 import QtGui, QtCore

class mymainwindow(QtGui.QMainWindow):
    def __init__(self):
        QtGui.QMainWindow.__init__(self, None, QtCore.Qt.WindowStaysOnTopHint)

app = QtGui.QApplication(sys.argv)
mywindow = mymainwindow()
mywindow.show()
app.exec_()

Pass the QMainWindow the WindowStaysOnTopHint window flag (or use setWindowFlags).

As in the name, this is a hint to the windowing manager (not a hard guarantee).

Simplest possible example:

import sys
from PyQt4 import QtGui, QtCore

class mymainwindow(QtGui.QMainWindow):
    def __init__(self):
        QtGui.QMainWindow.__init__(self, None, QtCore.Qt.WindowStaysOnTopHint)

app = QtGui.QApplication(sys.argv)
mywindow = mymainwindow()
mywindow.show()
app.exec_()
垂暮老矣 2024-08-22 01:53:59
setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)

setwindowaFlags 是一种可以从 form 对象调用它的方法,并且只接受一个参数,该参数是一个常量 QtCore.Qt.WindowStaysOnTopHint,它引用使您的表单保持在顶部

setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)

setwindowaFlags is a method that can call it from form object and just take one parameter is a constant QtCore.Qt.WindowStaysOnTopHint that refer to make your form Stays On Top

離殇 2024-08-22 01:53:59

适用于无框窗口(无标题)和始终位于顶部。
使用:
setWindowFlags(QtCore.Qt.WindowStaysOnTopHint | QtCore.Qt.FramelessWindowHint)

注意:如果您尝试设置为单独的窗口标志,则无框窗口将不起作用。
例如:下面的代码不会导致无框和始终位于顶部的窗口

self.setWindowFlags(Qt.FramelessWindowHint)
self.setWindowFlags(Qt.WindowStaysOnTopHint)

For both frameless window(no header) and Always on top.
USE:
setWindowFlags(QtCore.Qt.WindowStaysOnTopHint | QtCore.Qt.FramelessWindowHint)

NOTE: If you try to set as individually window flags, then frameless window won't work.
E.g: Below code won't result in frameless and Always on Top window

self.setWindowFlags(Qt.FramelessWindowHint)
self.setWindowFlags(Qt.WindowStaysOnTopHint)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文