RuntimeError: wrapped C/C++ object of type has been deleted
这个问题是我在利用pyqt5编写多界面时出现的,解决这个问题用了很长时间,查阅了很多资料,来记录一下。我不是专业编程者,所以在表述上会比较浅显、不够准确,请大家多多包涵。
1. 如果被调用的界面的代码中有类似这句:
self.setAttribute(Qt.WA_DeleteOnClose)
请删掉它。这句代码会在被调用界面关闭但主界面没关闭时,删除被调用界面的控件信息,具体的我讲不太好,不过这属于python和C++冲突的地方。毕竟pyqt就是把python和C++的Qt联系在一起的嘛。
2. 如果被调用的界面是用QMainWindow编写的,则也可能会出现上述问题。
因为QMainWindow默认centralwidget布局,可能会引起上述问题。建议不使用QMainWindow,自己使用布局来写,比如gridLayout等。
举例:
self.gridLayout = QtWidgets.QGridLayout(self)
self.gridLayout.setContentsMargins(0, 0, 0, 0)
self.gridLayout.setObjectName("gridLayout")
self.gridLayout.setAlignment(Qt.AlignCenter)self.groupBox = QtWidgets.QGroupBox()
self.groupBox.setMinimumSize(QtCore.QSize(500, 600))
self.groupBox.setObjectName("groupBox")
self.gridLayout.addWidget(self.groupBox)
3. 可以使用QStackedWidget代替多界面。但我没有这么做,因为对于我来说多界面是必需的。如果在可以选择的情况下,不使用多界面则可以直接避免这种情况。
RuntimeError: wrapped C/C++ object of type has been deleted相关推荐
- RuntimeError: wrapped C/C++ object of type QToolButton has been deleted
问题描述 因为我的项目设计商用,所以不便展示代码,抱歉. 我的窗体上有个ToolButton,然后软件运行过程中我想给他改文字,调用setText方法后,报错"RuntimeError: w ...
- RuntimeError: wrapped C/C++ object of type QPushButton has been deleted
RuntimeError: wrapped C/C++ object of type QPushButton has been deleted 若是使用的designer生成的代码,那么多半是在调用的 ...
- 解决PyQt: RuntimeError: wrapped C/C++ object has been deleted和has no attribute of flush in python
上篇文章的将命令行输出重定向到UI界面之后,在关闭UI界面时候会报错 has no attribute of flush in python或者 PyQt: RuntimeError: wrapped ...
- wrapped C/C++ object of type QCheckBox has been deleted
wrapped C/C++ object of type QCheckBox has been deleted checkbox 使用操作前,增加判断 import sip if not sip.is ...
- pyqt5 wrapped C/C++ object of type ToolTipItem has been deleted
问题描述 错误代码 ss= QDialog() ss.setWindowIcon(QIcon(icon)) layout = QFormLayout(ss) wchart1 = ChartBase() ...
- 2021-1-13关于pyqt5的表格中编辑选择的checkbox会出现找不到所选控件wrapped C/C++ object of type QCheckBox has been deleted
查看程序中是否出现self.tablewidget.clearContents()方法,如果有对应的选中的编辑集合self.checkBox=[],这个需要再次清空,否则会找不到之前的数据记录.也就是 ...
- RuntimeError: Expected object of type torch.cuda.LongTensor but found type torch.cuda.IntTensor
问题: anchor_label = np.array(self.id_dict[int(anchor_id)])identity_loss = criterion_identity(predicte ...
- Pytorch 类型错误:Expected object of type torch.FloatTensor but found type torch.cuda.FloatTensor.
Expected object of type torch.FloatTensor but found type torch.cuda.FloatTensor Pytorcht调试过程中,将数据传入模 ...
- PHP“Cannot use object of type stdClass as array”
php再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误 错误: Cannot use object of type stdClass as arr ...
最新文章
- 使用svn时碰到的一个的问题
- OpenCV源码安装教程(兼容CUDA)
- linux密码加密方式 2y,手动生成Linux密码(/etc/shadow)
- 【英语学习】【Level 07】U02 Live Work L3 The best of Shanghai
- 用正则表达式生成文章的目录大纲
- [Linux] 通过shell给unix socket发送数据
- linux命令检索字符串,用Linux的grep命令查找文件中符合条件的字符串
- github安卓版下载_Pandownload安卓版+IDM神器,手机还有下载不了的资源吗?
- srsLTE测试SDR频偏
- 二、Arduino软件下载-安装-测试教程
- windows64位首次安装git
- Docker容器之网络模式
- bezier.CSS_SVG_canvas画_贝兹曲线
- 像素是什么,一个像素有多大,像素和分辨率的关系
- Graphics.Blit
- mysql, mysqladmin, mysqld之间的区别。
- 华为云桌面,助力企业扬帆起航
- 开启创客教育课程建设的实体空间
- android自定义expandlistview,自定义ExpandableListView
- Linux程序之触摸,Android(Linux)模拟按键、触摸屏等事件
热门文章
- 深入浅出内存管理--内存管理区(Zone)
- VS2008 编译错误,生成后事件问题 Error 1 error PRJ0019: A tool returned an error code from “Performing Post-Build
- 从NXP官网下载的SDK如何导进MCUXpresso IDE
- 制作天猫界面的简易框架
- 读《巴比伦富翁》有感
- 【懒人必备】智能窗帘机器人,告别手动拉窗帘——软件功能实现篇
- 【计算机游戏开发】二维游戏场景绘制
- Yolo系列学习笔记
- 疫情下的区块链企业:11家公司共捐赠6000多万元,发动海外采购渠道
- 第9章:OFDM 减小PAPR