PyQt 问题记录

1.现成的组件不一定线程安全,(包括且不限于数据的修改竞争,和一些组件的崩溃 )

对于PyQt 的线程使用,可能还需要更谨慎些

保存逻辑

python 复制代码
 @QuestionBox("保存/Save")
    def Save(self):
        okFlag=False
        errFlag=False
        WriteCmd={}
        for it in self.ModelList():
            WriteCmd.clear()
            WriteCmd={}
            try:
                if self.__trans__.__HTTP_EN__:
                    WriteCmd={"cmd":"write",**it[0].checkWrite()}
                    if len(WriteCmd) == 1:
                        continue
                    self.__trans__.cmd(WriteCmd)
                    it[0].clearCheckWrite()
                    self.DevLog(f"{WriteCmd} Successful")
            except (HttpError,urllib.error.URLError) as e:
                QMessageBox.critical(self,"保存失败/Failed","执行失败/Failed %s"%(e.args[0]))
                self.DevLog(f"{WriteCmd} Failed")
                it[0].clearCheckWrite()
                return False 
            if it[0].submitAll():
                okFlag=True
            else:
                errFlag=True
        return okFlag and not errFlag

完全可控的情况下,可以使用多线程 (组件之间的多线程,建议通过信号触发)

没有崩溃的情况
win10 64 位系统可以平稳运行

相关推荐
王哈哈^_^1 小时前
【数据集】【YOLO】【VOC】目标检测数据集,查找数据集,yolo目标检测算法详细实战训练步骤!
人工智能·深度学习·算法·yolo·目标检测·计算机视觉·pyqt
苏三有春3 天前
PyQt5实战——UTF-8编码器UI页面设计以及按钮连接(五)
python·pyqt
充值内卷5 天前
PyQt入门指南三十六 QInputDialog输入对话框组件
开发语言·python·pyqt
yava_free6 天前
用PyQt 5 开发的雷达基数据可视化软件
python·pyqt
充值内卷7 天前
PyQt入门指南三十五 QAction动作组件
linux·python·pyqt
星寂樱易李10 天前
python--pyQt 单选按钮控件 -QRadioButton
开发语言·python·pyqt
彭祥.12 天前
点云标注工具开发记录(四)之点云根据类别展示与加速渲染
pyqt·opengl
love_songming12 天前
Pyside6 布局管理器(3)--- QGridLayout的使用
开发语言·python·pyqt·pyside6
痛&快乐着14 天前
python-PyQt项目实战案例:制作一个视频播放器
python·pyqt
goomind14 天前
YOLOv8实战野生动物识别
人工智能·python·yolo·目标检测·pyqt