这是在PyQt4,Linux和Python 2.5
上我可以让PyQt将窗口设置为“永远在其他应用程序上”吗?
例如,在GTK中我使用属性:Modal。
现在,在PyQt我正在使用QWidget,但是,我找不到办法做到这一点。
任何想法??
答案 0 :(得分:27)
将QMainWindow传递给WindowStaysOnTopHint
window flag(或使用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_()
答案 1 :(得分:9)
setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
setwindowaFlags
是一种可以从form
对象调用它的方法,只需要一个参数就是一个常量QtCore.Qt.WindowStaysOnTopHint
,它可以让你的表单保持在最顶层