GUI MDI 子窗口仅在第一次按下按钮时显示
GUI MDI Subwindow Only shows on first Button Press
我希望我在这里有一个简单的问题。我用 QT Designer 创建了一个非常大的 GUI 和一个 MDI 区域的子窗口。我使用 pyuic5 将其从 .ui
文件转换为 .py
文件。我编写了一个函数来在按下按钮时打开该子窗口。我第一次按下按钮时它工作正常。我遇到的问题是第二次按下按钮时,它只在 MDI 区域内显示一个空白子窗口。每次按下按钮时如何让它正确显示。我将在下面附上有关如何启动子窗口的代码。任何建议将不胜感激。感谢您的宝贵时间和帮助
单击按钮时调用的代码
def windowaction(self):
sub = QtWidgets.QMdiSubWindow()
sub.setWidget(self.Load_Input)
sub.setObjectName("Load_Input_window")
sub.setWindowTitle("Load Input")
self.mdiArea.addSubWindow(sub)
sub.show()
第一次点击按钮
第二次点击按钮
问题是由于将相同的widget对象添加到不同的QMdiSubWindow
,必须创建一个新对象并将其添加到新的QMdiSubWindow
。
def windowaction(self):
sub = QtWidgets.QMdiSubWindow()
Load_Input = LoadInput()
sub.setWidget(Load_Input)
sub.setObjectName("Load_Input_window")
sub.setWindowTitle("Load Input")
self.mdiArea.addSubWindow(sub)
sub.show()
我希望我在这里有一个简单的问题。我用 QT Designer 创建了一个非常大的 GUI 和一个 MDI 区域的子窗口。我使用 pyuic5 将其从 .ui
文件转换为 .py
文件。我编写了一个函数来在按下按钮时打开该子窗口。我第一次按下按钮时它工作正常。我遇到的问题是第二次按下按钮时,它只在 MDI 区域内显示一个空白子窗口。每次按下按钮时如何让它正确显示。我将在下面附上有关如何启动子窗口的代码。任何建议将不胜感激。感谢您的宝贵时间和帮助
单击按钮时调用的代码
def windowaction(self):
sub = QtWidgets.QMdiSubWindow()
sub.setWidget(self.Load_Input)
sub.setObjectName("Load_Input_window")
sub.setWindowTitle("Load Input")
self.mdiArea.addSubWindow(sub)
sub.show()
第一次点击按钮
第二次点击按钮
问题是由于将相同的widget对象添加到不同的QMdiSubWindow
,必须创建一个新对象并将其添加到新的QMdiSubWindow
。
def windowaction(self):
sub = QtWidgets.QMdiSubWindow()
Load_Input = LoadInput()
sub.setWidget(Load_Input)
sub.setObjectName("Load_Input_window")
sub.setWindowTitle("Load Input")
self.mdiArea.addSubWindow(sub)
sub.show()