qdialog 返回值_PyQt QDialog - 返回一个值并从对话框中关闭

在PyQt中,作者试图从一个QDialog子窗口小部件返回一个字典值到主窗口,并在用户点击“提交”按钮后关闭该子窗口。问题在于如何正确设置信号和槽来实现这一功能。目前的代码中,`Submitclose`函数返回了`roiGroups`,但没有正确关闭对话框。
摘要由CSDN通过智能技术生成

我正在使用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()

我似乎永远不会在if语句之后命中代码 .

来自我的子窗口小部件的适用代码(此处将包含更多内容):

try:

_fromUtf8 &

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值