将QDialog嵌入QWidget的简单方法

时间:2013-06-18 08:03:45

标签: qt dialog qt4 pyqt qdialog

我一直在寻找一种在QDialog中嵌入QWidget个实例的简单方法,但我发现只使用OpenGL或一些相当复杂的东西来实现这一点。实际上,我发现的所有例子都试图实​​现更多的东西,而不仅仅是嵌入QDialog。所以,我想知道:是否有一种简单而干净的方法可以在QDialog中嵌入QWidget

P.S。:我标记了,因为它正是我正在使用的,但我当然会接受c ++答案:)

这是我必须移植的软件的screen capture,我需要这样的功能。

2 个答案:

答案 0 :(得分:5)

您应该使用QMdiArea

widget = QWidget()
mdiarea = QMdiArea() 
layout = QVBoxLayout(widget)
layout.addWidget(mdiarea)
d = QInputDialog()
d.setLabelText("test2")
d.setInputMode(QInputDialog.TextInput)
w = mdiarea.addSubWindow(d)
w.show()
widget.show()

答案 1 :(得分:5)

myDialog->setWindowFlags(Qt::Widget); // to embed dialog as a simple widget