我一直在寻找一种将QDialog实例嵌入QWidget的简单方法,但是我发现所有内容都使用OpenGL或一些相当复杂的东西来实现。实际上,我发现的所有示例都试图实现更多功能,而不仅仅是嵌入QDialog。因此,我想知道:是否有一种简单干净的方法将QDialog嵌入到QWidget中?

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

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

最佳答案

您应该使用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()

08-07 18:18