1
我有...如何使用最小化/最大化窗口控件顯示Qt.Tool窗口?
class ToolWindow(QtWidgets.QMainWindow):
"""Generic window to be used as non-modal tool
Usage:
tool_win = ToolWindow()
layout = QtWidgets.QHBoxLayout()
button = QtWidgets.QPushButton('hello')
layout.addWidget(button)
tool_win.setup(layout)
button.released.connect(lambda: print('hello'))
tool_win.show()
"""
def __init__(self):
super(ToolWindow, self).__init__()
def setup(self, layout,
window_title='Untitled', object_name=None, tool=True):
"""Setup tool window"""
if tool:
self.setWindowFlags(QtCore.Qt.Tool)
self.widget = QtWidgets.QWidget()
self.widget.setLayout(layout)
self.setCentralWidget(self.widget)
self.setWindowTitle(window_title)
def closeEvent(self, event):
"""Delete object when closed"""
self.deleteLater()
不過,我想補充典型的最大化和最小化窗口控件的窗口。我已經嘗試添加下面的工具窗口類沒有成功(工具窗口仍然不顯示最大化/最小化窗口控件):
self.setWindowFlags(self.windowFlags() |
QtCore.Qt.WindowSystemMenuHint |
QtCore.Qt.WindowMinMaxButtonsHint)
是否有可能將這些控件添加到工具窗口?
或者,我可以創建一個非模態窗口,但始終坐在我的父應用程序頂部,並顯示最大化/最小化窗口控件?
請注意,我不希望這個工具窗口停留在我的系統上的所有窗口之上。我只希望它始終保持在我的應用程序之上。
你應該說明需要哪些平臺。 – ekhumoro