我的猕猴桃代码必须将小部件从A点平稳线性地移动到B点,并且还必须通过以太网电缆接收UDP数据包。目前,小部件从A平滑移动到C(AB行之间的C),然后停止接收数据(可能是0.5到1秒),然后小部件再次移动。 因此,移动不平稳。任何想法如何解决这个问题? 我正在使用来自python的套接字模块进行数据接收。
我什至尝试了线程编程。它没有帮助,同样的问题。
y
如何使用kivy应用程序的端口接收数据而不干扰其图形?
答案 0 :(得分:0)
问题在于您使用Clock.schedule_interval()
进行以太网接收。 Clock.schedule
系列将方法调度为在主线程上运行,因此您的以太网工作是在与窗口小部件运动相同的(GUI)线程上完成的。这会影响GUI性能。使用threading.Thread(target=self.ethernet_recv).start()
之类的将您的以太网代码放入另一个线程中。目标方法将需要执行循环以每0.5秒的间隔调用self.receive_ev_status()
。