PyQt 跨类之间的数据如何动态更新

PyQt 跨类之间的数据通信问题亦或同步问题

0. 引言

针对上述问题,最好的办法即:Signal/Slot,但是有时可能无法正常使用,比如在QGraphics Class中的多类之间(scene与item,item与view等)的鼠标事件的坐标互传问题(直接使用转换函数即可,这里仅仅是举例),其class并不支持信号与槽,这时就比较麻烦了。

1. QTimer

QTimer作为定时器,我让其固定在多少ms后对子类实体的数据更新到父类即可,简单粗暴。

    def __init__(self):
        super(XXXX, self).__init__()

        # --------------------------- Params Init --------------------------- #
        # 0. Use timer dynamic update
        self.timer = QTimer(self)
		
		# 1. Init time event
		self.my_time_event()

    # ----------------------------- Timer Event ----------------------------- #
    def my_time_event(self):
        self.timer.timeout.connect(self.update_param)
        self.timer.start(500)		# 500ms update

    def update_param(self):
    	pass
2. 信号与槽

这个方法未进行测试,这里说一下思路。前面提到了用不了信号与槽,因为对应的class不支持。
首先,要将该class进行QWidget?的继承,然后再进行数据的传输。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值