Qt-显示父级后无法显示Qt.Tool窗口?
我基本上有一个QMainWindow和一个对话框窗口,其构造函数如下所示Qt-显示父级后无法显示Qt.Tool窗口?,qt,dialog,pyqt,show,flags,Qt,Dialog,Pyqt,Show,Flags,我基本上有一个QMainWindow和一个对话框窗口,其构造函数如下所示 class VisualTool(QtGui.QDialog): def __init__(self, parent = None): QtGui.QWidget.__init__(self, parent) self.WidgetBoard = Ui_Aesthetics_Tool() self.WidgetBoard.setupUi(self) s
class VisualTool(QtGui.QDialog):
def __init__(self, parent = None):
QtGui.QWidget.__init__(self, parent)
self.WidgetBoard = Ui_Aesthetics_Tool()
self.WidgetBoard.setupUi(self)
self.setWindowFlags(QtCore.Qt.Tool) # <-
class VisualTool(QtGui.QDialog):
def uuu init uuu(self,parent=None):
QtGui.QWidget.\uuuuu init\uuuuuu(self,parent)
self.WidgetBoard=Ui\u美学工具()
self.WidgetBoard.setupUi(self)
self.setWindowFlags(QtCore.Qt.Tool)#我不确定我是否理解您的问题到底是什么。这个测试代码片段似乎运行良好,但我不知道您丢失的Ui\u\u Tool()代码是如何修改工具窗口的:
#!/usr/bin/env python
import sys
from PyQt4 import QtCore, QtGui
class Main(QtGui.QMainWindow):
def __init__(self, parent=None):
super(Main, self).__init__(parent)
self.resize(640,480)
self.button = QtGui.QPushButton("Click me")
self.setCentralWidget(self.button)
self.button.clicked.connect(self.showTool)
def showTool(self):
tool = VisualTool(self)
tool.show()
class VisualTool(QtGui.QDialog):
def __init__(self, parent = None):
QtGui.QWidget.__init__(self, parent)
# self.WidgetBoard = Ui_Aesthetics_Tool()
# self.WidgetBoard.setupUi(self)
self.setWindowFlags(QtCore.Qt.Tool)
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = Main()
myapp.show()
sys.exit(app.exec_())
我能够启动多个工具窗口。
至于使用exec_uz(),这是一个模式阻塞调用,可能不是您想要的 我不太清楚你的问题到底是什么。这个测试代码片段似乎运行良好,但我不知道您丢失的Ui\u\u Tool()代码是如何修改工具窗口的:
#!/usr/bin/env python
import sys
from PyQt4 import QtCore, QtGui
class Main(QtGui.QMainWindow):
def __init__(self, parent=None):
super(Main, self).__init__(parent)
self.resize(640,480)
self.button = QtGui.QPushButton("Click me")
self.setCentralWidget(self.button)
self.button.clicked.connect(self.showTool)
def showTool(self):
tool = VisualTool(self)
tool.show()
class VisualTool(QtGui.QDialog):
def __init__(self, parent = None):
QtGui.QWidget.__init__(self, parent)
# self.WidgetBoard = Ui_Aesthetics_Tool()
# self.WidgetBoard.setupUi(self)
self.setWindowFlags(QtCore.Qt.Tool)
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = Main()
myapp.show()
sys.exit(app.exec_())
我能够启动多个工具窗口。
至于使用exec_uz(),这是一个模式阻塞调用,可能不是您想要的 更新;我有一个工具可以用.exec_()显示,但这会禁止与QMainWindow.Update的交互;我有一个工具可以用.exec_u3;()显示,但这会禁止与QMainWindow的交互。刚刚修复了它。。。。我的和你的一模一样。然而,我只是在“工具”中添加了“自我”,现在一切都正常了!不知道为什么你现在没有它!谢谢你!刚修好。。。。我的和你的一模一样。然而,我只是在“工具”中添加了“自我”,现在一切都正常了!不知道为什么你现在没有它!谢谢你!