【发布时间】:2020-02-20 00:30:05
【问题描述】:
我正在构建一个跨平台应用程序,该应用程序有一个按钮来使用 PyQt 5.13.1 切换无框窗口“保持在顶部”选项。我使用以下选项来实现这一点。
self.setWindowFlags(QtCore.Qt.FramelessWindowHint | QtCore.Qt.Dialog) - 默认窗口标志
self.setWindowFlags(window.windowFlags() & ~QtCore.Qt.WindowStaysOnTopHint) - 禁用留在顶部,
self.setWindowFlags(window.windowFlags() | QtCore.Qt.WindowStaysOnTopHint) - 启用保持领先。
这些行在 Windows 和 Mac 中运行良好,但在 Linux 中不起作用(在 Ubuntu、CentOS 上尝试过)。我什至尝试过使用不同的窗口标志,但没有成功!
【问题讨论】:
-
这是在
X11上吗?如果是这样,您也可以尝试设置QtCore.Qt.X11BypassWindowManagerHint标志,看看是否有任何不同。
标签: python-3.x linux qt pyqt pyqt5