Python 2.7 我对向弹出窗口传递值感到困惑

Python 2.7 我对向弹出窗口传递值感到困惑,python-2.7,pyqt,Python 2.7,Pyqt,新手问题,我正在学习PyQt,但我很困惑: 我有一个带有按钮的主窗体,每个按钮都连接到一个函数,该函数打开一个不同的对话框,该对话框执行代码,该代码通过PyAudio给出一个测量音频级别的值。我需要将该值传递回主窗体 目前我正在使用全局变量,但我知道这被认为是丑陋和危险的,尽管它是有效的。。。。我认为最好的方法是在创建弹出对话框时通过引用从主窗体类实例传递变量,但我不确定如何做到这一点,因为该方法是由connect方法调用的 self.ui.pushButton_SystemCalibratio

新手问题,我正在学习PyQt,但我很困惑: 我有一个带有按钮的主窗体,每个按钮都连接到一个函数,该函数打开一个不同的对话框,该对话框执行代码,该代码通过PyAudio给出一个测量音频级别的值。我需要将该值传递回主窗体

目前我正在使用全局变量,但我知道这被认为是丑陋和危险的,尽管它是有效的。。。。我认为最好的方法是在创建弹出对话框时通过引用从主窗体类实例传递变量,但我不确定如何做到这一点,因为该方法是由connect方法调用的

self.ui.pushButton_SystemCalibration.clicked.connect(self.SystemCalibrationStart)
赛尔夫有这样的方法:

def SystemCalibrationStart(self):

    global SysCalPassed

    self.Diag=SysCalDialog()
    self.Diag.exec_()
那么,如何从SysCal对话框SysCal返回传递到主窗体的数据,而不将其声明为全局数据


谢谢

不需要任何全球服务。只需在exec_uu返回值后访问所需的任何属性、方法等,即value=self.Diag.getValue,或其他任何东西。。我假设exec_uu返回后,所有局部变量都超出范围,因为对象被破坏了?谢谢,我会努力的。太好了,谢谢