对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字典中的键映射多个值的方法(列表或者集合)
Oct 17 Python
Python+OpenCV实现图像融合的原理及代码
Dec 03 Python
python OpenCV GrabCut使用实例解析
Nov 11 Python
Python调用Windows API函数编写录音机和音乐播放器功能
Jan 05 Python
详解python itertools功能
Feb 07 Python
Python类的绑定方法和非绑定方法实例解析
Mar 04 Python
Python之Django自动实现html代码(下拉框,数据选择)
Mar 13 Python
树莓派升级python的具体步骤
Jul 05 Python
Python求区间正整数内所有素数之和的方法实例
Oct 13 Python
python time()的实例用法
Nov 03 Python
Python getsizeof()和getsize()区分详解
Nov 20 Python
opencv-python图像配准(匹配和叠加)的实现
Jun 23 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
PHP学习之PHP变量
2006/10/09 PHP
php隐藏实际地址的文件下载方法
2015/04/18 PHP
PHP 微信支付类 demo
2015/11/30 PHP
关于恒等于(===)和非恒等于(!==)
2007/08/20 Javascript
javascript函数作用域学习示例(js作用域)
2014/01/13 Javascript
jQuery延迟加载图片插件Lazy Load使用指南
2015/03/25 Javascript
javascript中使用未定义变量或值的情况分析
2016/07/19 Javascript
jQuery Masonry瀑布流布局神器使用详解
2017/05/25 jQuery
使用 Javascript 实现浏览器推送提醒功能的示例
2017/11/03 Javascript
mpvue中使用flyjs全局拦截的实现代码
2018/09/13 Javascript
JavaScript 处理树数据结构的方法示例
2019/06/16 Javascript
[01:19:54]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#1Alliance VS EHOME
2016/03/03 DOTA
[01:23:24]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第三场 2月7日
2021/03/11 DOTA
python实现的用于搜索文件并进行内容替换的类实例
2015/06/28 Python
python解析html提取数据,并生成word文档实例解析
2018/01/22 Python
django中的HTML控件及参数传递方法
2018/03/20 Python
django加载本地html的方法
2018/05/27 Python
对python修改xml文件的节点值方法详解
2018/12/24 Python
Python实现字符串中某个字母的替代功能
2019/10/21 Python
使用Python实现Wake On Lan远程开机功能
2020/01/22 Python
Django CSRF认证的几种解决方案
2020/03/03 Python
Python读取文件内容为字符串的方法(多种方法详解)
2020/03/04 Python
Python HTMLTestRunner可视化报告实现过程解析
2020/04/10 Python
Python字符串split及rsplit方法原理详解
2020/06/29 Python
如何用Python徒手写线性回归
2021/01/25 Python
使用jquery实现HTML5响应式导航菜单教程
2014/04/02 HTML / CSS
中国综合网上购物商城:苏宁易购
2016/08/09 全球购物
希特勒的演讲稿
2014/05/23 职场文书
中学生关于梦想的演讲稿
2014/08/22 职场文书
财政专业大学生职业生涯规划书
2014/09/17 职场文书
2014年机关后勤工作总结
2014/12/16 职场文书
整改通知书格式
2015/04/22 职场文书
观后感的写法
2015/06/19 职场文书
Feign调用全局异常处理解决方案
2021/06/24 Java/Android
Spring Boot 排除某个类加载注入IOC的操作
2021/08/02 Java/Android
Go并发4种方法简明讲解
2022/04/06 Golang