Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI

Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI

在GUI的设计中,一定会遇到多线程的设计。多线程去处理事情,在有些设计里面那个必然的。先看看这样的一个例子:

Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI

这是我前几天的完成的一个串口调试助手的图。我们知道当我们打开串口的时候,数据接收区就可能有数据的反馈,然而在此时,我们还必须保证其它按钮的功能。很典型这个地方需要使用两个线程来完成这个操作。所以多线程的学习将是必要的。

下面我们就开始讲demo了:

1.打开Qt Designer布局这样一些控件,我就不详细介绍怎么操作的了。如图:

Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI

2.将.ui转化成.py

3.新建一个.py来实现逻辑的控制:

我们使用3个互斥的按钮来控制这个进度条,当点击开始的时候,进度条开始移动,并且开启另外一个线程,也开始计数,但点击停止的时候,进度条停止计数,当点击清除的时候,进度条清0,这两个操作对另外开启的呢个线程没有任何影响。

  • 其实也很简单给大家一个开启一个线程的模板类:

Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI

这个线程里面要实现的动作就可以在run这个函数里面写了。

  • 开启这个线程:

Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI

  • 终止线程

Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI

  • 可能需要需要给大家完整的代码,才能看的更清楚

  1. GUI的代码:

Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI

2.逻辑代码

Python+PyQt5+Qt Designer+PyCharm实现一个多线程的GUI


分享到:


相關文章: