我正在使用PyQt中的用户界面,我在尝试使用QDialog时遇到了一些问题.基本上我有一个主要的小部件和一个子小部件,保存在单独的.py文件中; 当我点击主窗口小部件中的某个按钮时,我希望打开子窗口小部件.这似乎开得很好.
问题在于返回和关闭.我的子窗口小部件上有一个"提交"按钮 - 当用户单击此按钮时,我想将一个值(由其输入创建的字典)返回到主窗口小部件,然后关闭子窗口小部件.我似乎无法用我现在的代码做这些事情.
主窗口小部件中适用的代码位(如果问题不明显,可以添加更多代码以使其自包含):
import SGROIWidget_ui
def retranslateUi(self, ROIGUI):
#ShowGroupROI is a push-button
self.ShowGroupROI.clicked.connect(self.ShowGroupROIFunction)
def ShowGroupROIFunction(self):
dialog = QDialog()
dialog.ui = SGROIWidget_ui.Ui_ShowGroupWidget()
dialog.ui.setupUi(dialog)
dialog.setAttribute(QtCore.Qt.WA_DeleteOnClose)
if dialog.exec_():
roiGroups=dialog.Submitclose()
print(roiGroups)
dialog.accept()
Run Code Online (Sandbox Code Playgroud)
我似乎永远不会在if语句之后命中代码.
来自我的子窗口小部件的适用代码(此处将包含更多内容):
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
def _fromUtf8(s):
return s
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig)
class Ui_ShowGroupWidget(QtGui.QWidget):
def __init__(self):
QtGui.QWidget.__init__(self)
self.setupUi(self)
def setupUi(self, ShowGroupWidget):
#sets up Submit button
def …
Run Code Online (Sandbox Code Playgroud) 快速问题 - 我正在使用pyqt中的GUI,它有两个选项卡.现在第二个选项卡在启动时始终打开,我认为这是因为它运行一个函数来查找要保留在QLineEdit中的文件名.我真的希望第一个标签出现在启动时.我该怎么做呢?