pyqt5 多线程+定时器+读取本地图片
前言
一个程序界面有多个button 按钮时,单击一个按钮,若此按钮对应的信号正在执行,且还未执行完毕;
此时再次单击另外一个按钮,就会出现假死状态。
这个时候我们就需要使用 多线程去解决
多线程+定时器+读取本地图片
# coding:utf-8
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from UU2 import *
import sys
import time
a = 0
class Thread_1(QThread): # 线程1
def __init__(self):
super().__init__()
def run(self):
values = [1, 2, 3, 4, 5]
while True:
for i in values:
print(i)
time.sleep(0.5) # 休眠
class Thread_2(QThread): # 线程2
def __init__(self):
super().__init__()
def run(self):
values = ["a", "b", "c", "d", "e"]
for i in values:
print(i)
time.sleep(0.5)
class MainWindous(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self):
super(MainWindous, self).__init__()
self.thread_2 = Thread_2() # 创建线程
self.thread_1 = Thread_1() # 创建线程
self.setupUi(self)
self.timer = QTimer() # 初始化一个定时器
self.pushButton.clicked.connect(self.startTimer) # 开始按钮 对应槽
self.pushButton_2.clicked.connect(self.endTimer) # 关闭按钮 对应槽
self.pushButton_3.clicked.connect(self.pic) # 开启图片按钮 对应槽
self.pushButton_4.clicked.connect(self.pic_close) # 停止图片按钮 对应槽
def startTimer(self):
# self.timer.start(1000) # 开始定时,参数为定时时间间隔
# print("start")
self.thread_1.start() # 开始线程
global a
a = 1
print("start")
def endTimer(self):
print("end")
self.thread_2.start() # 开始线程
global a
a = 0
def pic(self):
if a == 1:
self.timer.timeout.connect(self.pic1) # 每次计时到时间时发出信号
self.timer.start(3000) # 设置计时间隔并启动;单位毫秒
else:
QtWidgets.QMessageBox.critical(self, "错误", "请先开始程序")
def pic1(self):
if a == 1:
self.label.setText("加载照片")
print("图片加载成功")
# self.thread_3.start() # 开始线程
# 加载本地图片
img_path = "./1.jpg"
self.label_2.setPixmap(QPixmap(img_path))
self.label_3.setPixmap(QPixmap("./1.jpg").scaled(200, 200)) # 显示图片尺寸
QtWidgets.QApplication.processEvents()
else:
print("错误")
self.timer.stop()
def pic_close(self):
self.timer.stop()
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
mainWindow = MainWindous()
mainWindow.show()
sys.exit(app.exec_())
成果图
pyqt5 多线程+定时器+读取本地图片的更多相关文章
- window.open()读取本地图片简单使用总结
最近做了一个项目,需要读取本地图片出来,问了一些人,感觉在数据库中存取路径比较合适,故做此方法. 后台查询出来的路径
- js读取本地图片并显示
抄自 http://blog.csdn.net/qiulei_21/article/details/52785191 js读取本地图片并显示 第一种方法比较好 版权声明:本文为博主原创文章,未经博主允 ...
- FileReader:读取本地图片文件并显示
最近忙得比狗还惨,导致长时间没能更新文章,真心对不住啊.抽空整理了下关于在页面上读取和显示本地图片的实例文章,本文通过实例讲解如何使用支持FileReader浏览器的用户将能够通过一个file inp ...
- UE4 读取本地图片
参考链接:https://answers.unrealengine.com/questions/235086/texture-2d-shows-wrong-colors-from-jpeg-on-ht ...
- Springboot读取本地图片并显示
在application.yml中配置url访问路径和本地图片路径: 方框1:url中访问路径,这里为:localhost:8080/testspringboot/image/... 方框2:本地图片 ...
- phonegap(cordova) 自己定义插件代码篇(四)----读取本地图片
有时候确实知道本地图片地址,要获取到base64 /** * 获取本地图片,包括路径和压缩后的 base64 */ (function (cordova) { var define = cordov ...
- Jsp&Servlet实现读取本地图片并展示
在Web开发中图片的读取和展示是一个很常见的功能,实现的过程大致也都一样(包括在各种框架中--)!接下来用流的方式来实现图片的展示 1. 创建Servlet,实现读取,请求方式使用get请求: p ...
- 19-Javaweb项目读取本地图片通过虚拟路径
有时会把文件存在本地如将图片等放在c.d盘等,在javaweb引用时会出现无法直接访问的问题,但是还是有办法解决的. 可以通过配置虚拟路径: 步骤一: 双击servers下面的tomcat, 在弹出的 ...
- 【Android】WebView读取本地图片
背景 咱的博客园APP,是通过一个WebView来展示新闻的详情的.新闻必然是图文并茂的,无论是支持离线缓存还是加速新闻的打开速度, 都需要咱们打通本地存储与WebView之间的桥梁. 思路 1:首先 ...
随机推荐
- Win网络安全审计
目录 Win进程通信 netstat -nb TCPView 审计登陆历史 security日志 WinLogOnView Win进程通信 netstat -nb 用这个命令就能看到进程和外部的IP连 ...
- [译]我是如何将GTA在线模式的加载时间缩短70%的
[译]我是如何将GTA在线模式的加载时间缩短70%的 译注: 最近在网上发现了一篇有意思的文章, 一个国外大神受不了GTA5在线模式的加载时间, 一怒之下反汇编了GTA5的源码, 并最终发现了问题的原 ...
- 树莓派4b通过外接ssd硬盘启动系统失败的排查和解决
树莓派4b通过外接ssd硬盘启动系统失败,症状: 屏幕卡在黑屏或提示 mmc1:Controller never released inhibit bit(s).... 先说如何设置硬盘启动,后面是解 ...
- Python爬虫系统化学习(5)
Python爬虫系统化学习(5) 多线程爬虫,在之前的网络编程中,我学习过多线程socket进行单服务器对多客户端的连接,通过使用多线程编程,可以大大提升爬虫的效率. Python多线程爬虫主要由三部 ...
- 【HTB系列】靶机Bitlab的渗透测试
出品|MS08067实验室(www.ms08067.com) 本文作者:是大方子(Ms08067实验室核心成员) 0x00 本文目录 反思与总结 基本信息 渗透测试过程 补充 0x01 反思与总结 c ...
- 追洞小组 | 实战CVE-2020-7471漏洞
出品|MS08067实验室(www.ms08067.com) 本文作者:守拙(Ms08067实验室追洞小组成员) 一.漏洞名称: 通过StringAgg(分隔符)的潜在SQL注入漏洞 二.漏洞编号: ...
- 【翻译】内部API的价值
内部api的设计,主要是为了简化软件的开发,简化系统和操作过程.目前绝大多数用例是这样的. 内部api经常被忽略,因为它们是针对内部开发人员的.这种类型的api通常使用于特定公司及其部门的专用数据.尽 ...
- python基础学习之描述符和装饰器
描述符的了解: 描述符协议: python描述符是一个"绑定行为"的对象属性,在描述符协议中,它可以通过方法重写属性的访问.这些方法有: __get__, __set__, 和__ ...
- 19. 一文搞懂 Go Modules 前世今生及入门使用
Hi,大家好. 我是明哥,在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 <Go编程时光>,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适 ...
- wrf模拟的domain图绘制
wrf模拟的区域绘制,domain图,利用python的cartopy库绘制模拟区域 参考Liang Chen的draw_wrf_domian.py这个代码, 出处python画wrf模式的模拟区域 ...