pyqt5 子窗口带参返回主窗口 代码
时间: 2024-02-05 16:37:07 浏览: 94
PyQt5实现从主窗口打开子窗口的方法
5星 · 资源好评率100%
可以通过信号与槽机制实现子窗口带参返回主窗口,具体代码实现可以参考以下示例:
在子窗口类中定义一个信号,用于传递参数:
```
class SubWindow(QWidget):
returnSignal = pyqtSignal(str)
def __init__(self, parent=None):
super(SubWindow, self).__init__(parent)
# ...
```
在子窗口中添加一个按钮,点击按钮时触发子窗口的信号,并将参数传递出去:
```
class SubWindow(QWidget):
# ...
def initUI(self):
# ...
btn = QPushButton("返回主窗口", self)
btn.clicked.connect(lambda:self.returnSignal.emit("Hello, Main Window!"))
# ...
```
在主窗口中连接子窗口的信号和槽,当子窗口的信号触发时,执行槽函数并处理参数:
```
class MainWindow(QWidget):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
# ...
self.subWin = SubWindow()
self.subWin.returnSignal.connect(self.handleSubWinReturn)
# ...
def handleSubWinReturn(self, msg):
QMessageBox.information(self, "返回信息", msg)
```
这样就实现了子窗口带参返回主窗口的功能。
阅读全文