对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 相关文章推荐
django自定义Field实现一个字段存储以逗号分隔的字符串
Apr 27 Python
Python中的time模块与datetime模块用法总结
Jun 30 Python
Python对excel文档的操作方法详解
Dec 10 Python
Python实现繁体中文与简体中文相互转换的方法示例
Dec 18 Python
在pycharm 中添加运行参数的操作方法
Jan 19 Python
对python3.4 字符串转16进制的实例详解
Jun 12 Python
Python中栈、队列与优先级队列的实现方法
Jun 30 Python
Django 开发调试工具 Django-debug-toolbar使用详解
Jul 23 Python
Python如何访问字符串中的值
Feb 09 Python
Django之choices选项和富文本编辑器的使用详解
Apr 01 Python
python+requests实现接口测试的完整步骤
Oct 27 Python
pdf论文中python画的图Type 3 fonts字体不兼容的解决方案
Apr 24 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
pdo中使用参数化查询sql
2011/08/11 PHP
PHP 下载文件时自动添加bom头的方法实例
2014/01/10 PHP
JQuery打造PHP的AJAX表单提交实例
2009/11/03 Javascript
js中关于String对象的replace使用详解
2011/05/24 Javascript
js获取class的所有元素
2013/03/28 Javascript
js计算两个时间之间天数差的实例代码
2013/11/19 Javascript
extjs 分页使用jsp传递数据示例
2014/07/29 Javascript
nodejs开发微博实例
2015/03/25 NodeJs
js中this用法实例详解
2015/05/05 Javascript
JavaScrip常见的一些算法总结
2015/12/28 Javascript
JavaScript事件学习小结(三)js事件对象
2016/06/09 Javascript
基于jQuery实现火焰灯效果导航菜单
2017/01/04 Javascript
Angular2-primeNG文件上传模块FileUpload使用详解
2017/01/14 Javascript
jQuery加载及解析XML文件的方法实例分析
2017/01/22 Javascript
ionic+AngularJs实现获取验证码倒计时按钮
2017/04/22 Javascript
在element-ui的el-tree组件中用render函数生成el-button的实例代码
2018/11/05 Javascript
深入理解Vue.js轻量高效的前端组件化方案
2018/12/10 Javascript
详解react-refetch的使用小例子
2019/02/15 Javascript
Vue动态生成表格的行和列
2019/07/18 Javascript
layui实现下拉复选功能的例子(包括数据的回显与上传)
2019/09/24 Javascript
vue和iview实现Scroll 数据无限滚动功能
2019/10/31 Javascript
Python实现list反转实例汇总
2014/11/11 Python
python3.4.3下逐行读入txt文本并去重的方法
2018/04/29 Python
python实现NB-IoT模块远程控制
2018/06/20 Python
Python函数any()和all()的用法及区别介绍
2018/09/14 Python
Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript实现社交分享系统
2020/04/21 Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
2020/05/22 Python
Python列表如何更新值
2020/05/27 Python
Selenium alert 弹窗处理的示例代码
2020/08/06 Python
Molton Brown美国官网:奢华美容、香水、沐浴和身体护理
2020/09/02 全球购物
error和exception有什么区别
2012/10/02 面试题
应聘美工求职信
2013/11/07 职场文书
大学优秀班主任事迹材料
2014/05/02 职场文书
群众路线四风对照检查材料
2014/11/04 职场文书
Python list列表删除元素的4种方法
2021/11/01 Python
Win11 BitLocker 驱动器加密
2022/04/19 数码科技