对pyqt5多线程正确的开启姿势详解


Posted in Python onJune 14, 2019

如下所示:

# -*- coding: utf-8 -*-
 
import sys
from PyQt5.QtCore import QThread, pyqtSignal
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QMessageBox, \
  QPushButton, QLineEdit, QLabel, QToolTip, QComboBox, QTextEdit
 
 
class MyBeautifulClass(QMainWindow):
  def __init__(self):
    super(MyBeautifulClass, self).__init__()
    self.init_ui()
 
  def init_ui(self):
    self.resize(1000, 800)
    self.setWindowTitle('Demo of PyQt5 QThread')
    self.btn_1 = QPushButton('start', self)
    self.btn_1.setGeometry(100, 100, 100, 50)
    self.btn_1.clicked.connect(self.slot_btn_1)
    self.linEdit_2 = QLineEdit(self)
    self.linEdit_2.setGeometry(100, 400, 300, 50)
 
  def slot_btn_1(self):
    self.mbt = MyBeautifulThread()
    self.mbt.trigger.connect(self.slot_thread)
    self.mbt.start()
 
  def say_love(self):
    print('say love')
 
  def slot_thread(self, msg_1, msg_2):
    self.linEdit_2.setText(msg_1 + msg_2)
 
 
class MyBeautifulThread(QThread):
  trigger = pyqtSignal(str, str)
 
  def __init__(self):
    super(MyBeautifulThread, self).__init__()
 
  def run(self):
    w = MyBeautifulClass()
    w.say_love()
    self.trigger.emit('Lo', 've')
 
 
def main():
  app = QApplication(sys.argv)
  w = MyBeautifulClass()
  w.show()
  sys.exit(app.exec_())
 
 
if __name__ == '__main__':
  main()

以上这篇对pyqt5多线程正确的开启姿势详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python解决鸡兔同笼问题的方法
Dec 20 Python
Python中尝试多线程编程的一个简明例子
Apr 07 Python
python批量查询、汉字去重处理CSV文件
May 31 Python
Python判断中文字符串是否相等的实例
Jul 06 Python
使用python爬取抖音视频列表信息
Jul 15 Python
Ubuntu18.04安装 PyCharm并使用 Anaconda 管理的Python环境
Apr 08 Python
详解pandas.DataFrame.plot() 画图函数
Jun 14 Python
Python smtp邮件发送模块用法教程
Jun 15 Python
Python叠加矩形框图层2种方法及效果
Jun 18 Python
python线程里哪种模块比较适合
Aug 02 Python
python实现网页录音效果
Oct 26 Python
解决TensorFlow训练模型及保存数量限制的问题
Mar 03 Python
Python+PyQT5的子线程更新UI界面的实例
Jun 14 #Python
在PYQT5中QscrollArea(滚动条)的使用方法
Jun 14 #Python
PYQT5设置textEdit自动滚屏的方法
Jun 14 #Python
使用PyQt4 设置TextEdit背景的方法
Jun 14 #Python
Ubuntu18.04中Python2.7与Python3.6环境切换
Jun 14 #Python
ubuntu 16.04下python版本切换的方法
Jun 14 #Python
windows下安装Python虚拟环境virtualenvwrapper-win
Jun 14 #Python
You might like
法国:浪漫之都的咖啡文化
2021/03/03 咖啡文化
PHP 遍历XP文件夹下所有文件
2008/11/27 PHP
PHP 读取文件内容代码(txt,js等)
2009/12/06 PHP
几个有用的php字符串过滤,转换函数代码
2012/05/01 PHP
PHP中使用addslashes函数转义的安全性原理分析
2014/11/03 PHP
ThinkPHP中create()方法自动验证实例
2017/04/26 PHP
javascript编程起步(第二课)
2007/02/27 Javascript
你需要知道的JavsScript可以做什么?
2007/06/29 Javascript
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
2007/07/11 Javascript
有趣的JavaScript数组长度问题代码说明
2011/01/20 Javascript
全面解析标签页的切换方式
2016/08/21 Javascript
React中ES5与ES6写法的区别总结
2017/04/21 Javascript
用React-Native+Mobx做一个迷你水果商城APP(附源码)
2017/12/25 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
基于Vue.js与WordPress Rest API构建单页应用详解
2019/09/16 Javascript
[02:51]DOTA2英雄基础教程 风暴之灵
2013/12/23 DOTA
[01:34]2014DOTA2展望TI 剑指西雅图VG战队专访
2014/06/30 DOTA
[39:07]LGD vs VP 2018国际邀请赛淘汰赛BO3 第二场 8.21
2018/08/22 DOTA
详解Python 数据库的Connection、Cursor两大对象
2018/06/25 Python
python设置环境变量的原因和方法
2019/06/24 Python
基于Python测试程序是否有错误
2020/05/16 Python
Python中如何引入第三方模块
2020/05/27 Python
巧用 CSS3的webkit-box-reflect 倒影实现各类动效
2021/03/05 HTML / CSS
HTMl5的存储方式sessionStorage和localStorage详解
2014/03/18 HTML / CSS
日本乐天德国站:Rakuten.de
2019/05/16 全球购物
常见的软件开发流程有哪些
2015/11/14 面试题
应届毕业生求职自荐书
2014/01/03 职场文书
工厂门卫岗位职责范本
2014/04/04 职场文书
带病坚持工作事迹
2014/05/03 职场文书
防火标语大全
2014/10/06 职场文书
初中运动会前导词
2015/07/20 职场文书
2016年禁毒宣传活动总结
2016/04/05 职场文书
SpringRetry重试框架的具体使用
2021/07/25 Java/Android
PyTorch中permute的使用方法
2022/04/26 Python
Meta增速拉垮,元宇宙难当重任
2022/04/29 数码科技
Spring Boot 实现 WebSocket
2022/04/30 Java/Android