PyQt写的图片播放器简约版.

用PyQt写的图片播放器。

用线程控制。

线程之间的信号传递。

 1 # -*- coding:utf-8 -*-
 2
 3 from PyQt4 import QtGui, QtCore
 4 import sys, os, time
 5
 6 # from datetime import date, time, datetime, timedelta
 7 QtCore.QTextCodec.setCodecForTr(QtCore.QTextCodec.codecForName("utf8"))
 8
 9 GetMyPath = []
10 class Image_view(QtGui.QMainWindow):
11     def __init__(self):
12         super(Image_view, self).__init__()
13
14         self.setWindowTitle(self.tr("Image_view"))
15         self.resize(800, 450)
16
17         self.imageLabel = QtGui.QLabel()
18         self.imageLabel.setSizePolicy(QtGui.QSizePolicy.Ignored, QtGui.QSizePolicy.Ignored)
19         self.imageLabel.setScaledContents(True)
20         self.setCentralWidget(self.imageLabel)
21
22         self.createActions()
23         self.createButton()
24         self.MyImage = QtGui.QImage()
25
26         self.th_cmd = mythread()
27         self.th_cmd._signal.connect(self.runImages)
28
29     def createActions(self):
30         self.openFileAction = QtGui.QAction(self.tr("Open Images Path"), self)
31         self.connect(self.openFileAction, QtCore.SIGNAL("triggered()"), self.OpenFile)
32
33         self.Play_Image = QtGui.QAction(self.tr("Play"), self)
34         self.connect(self.Play_Image, QtCore.SIGNAL("triggered()"), self.StartPlay)
35
36         self.Stop_Image = QtGui.QAction(self.tr("Stop"), self)
37         self.connect(self.Stop_Image, QtCore.SIGNAL("triggered()"), self.StopPay)
38
39     def createButton(self):
40         fileTool = self.addToolBar(self.tr("文件"))
41         fileTool.addAction(self.openFileAction)
42
43         Play_Image_Tool = self.addToolBar(self.tr("播放"))
44         Play_Image_Tool.addAction(self.Play_Image)
45
46         Exit_Image_Tool = self.addToolBar(self.tr("停止"))
47         Exit_Image_Tool.addAction(self.Stop_Image)
48
49     def OpenFile(self):
50         s = QtGui.QFileDialog.getExistingDirectory(self, u"Give Me FileName[填入路径文件名]:")
51         for i in os.listdir(s):
52             GetMyPath.append(str(s) + "\\" + str(i))
53         #print GetMyPath
54
55     def StartPlay(self):
56         self.th_cmd.start()
57
58     def StopPay(self):
59         self.th_cmd.terminate()  # terminate 终止进程.
60
61     def runImages(self, item):
62         MyPath = GetMyPath
63         if self.MyImage.load(MyPath[int(item)]) is not None:
64             self.imageLabel.setPixmap(QtGui.QPixmap.fromImage(self.MyImage))
65
66
67 class mythread(QtCore.QThread):
68     _signal = QtCore.pyqtSignal(str)
69
70     def __init__(self):
71         super(mythread, self).__init__()
72
73     def run(self, day=0, hour=0, min=0, second=2):
74         for i in range(len(GetMyPath)):
75             self._signal.emit(str(i))
76
77             time.sleep(0.1)
78
79
80
81 if __name__ == "__main__":
82     app = QtGui.QApplication(sys.argv)
83     win = Image_view()
84     win.show()
85     app.exec_()

时间: 2024-11-01 16:51:54

PyQt写的图片播放器简约版.的相关文章

HTML5动画图片播放器 高端大气

我们见过很多图片播放插件(焦点图),很多都基于jQuery.今天介绍的HTML5图片播放器很特别,它不仅在图片间切换有过渡动画效果,而且在切换时图片中的元素也将出现动画效果,比如图中的文字移动.打散.重新组合等.这款HTML5动画图片播放器算得上是高端大气上档次. 在线演示源码下载 转载自:http://www.html5tricks.com/html5-image-player-with-animation.html HTML5动画图片播放器 高端大气

WPF技术触屏上的应用系列(四): 3D效果图片播放器(图片立体轮放、图片立体轮播、图片倒影立体滚动)效果实现

原文:WPF技术触屏上的应用系列(四): 3D效果图片播放器(图片立体轮放.图片立体轮播.图片倒影立体滚动)效果实现 去年某客户单位要做个大屏触屏应用,要对档案资源进行展示之用.客户端是Window7操作系统,54寸大屏电脑电视一体机.要求有很炫的展示效果,要有一定的视觉冲击力,可触控操作.当然满足客户的要求也可以有其它途径.但鉴于咱是搞 .NET技术的,首先其冲想到的微软WPF方面,之前对WPF的了解与学习也只是停留在比较浅的层面,没有进一步深入学习与应用.所以在项目接来以后,也就赶鸭子上架了

jQuery实现类似视频播放功能的图片播放器插件

jquery Image Player是一款可以像视频播放一样逐张播放图片的图片播放器jQuery插件.当你需要介绍你的某个产品和项目的时候,这个插件就可以发挥它的强大作用.你可以将产品或项目的各个功能做成图片,然后使用该插件来逐帧播放. 现在大多数的产品和项目介绍使用的都是gif图片或flash,甚至是直接嵌入视频,使用这个图片播放器插件,你可以自由的控制哪张图片需要播放,还可以设置淡入淡出效果,图片滑动效果,图片标题等等. 效果演示:http://www.htmleaf.com/Demo/2

QT制作一个图片播放器

前言:使用qt制作了一个简单的图片播放器,可以播放gif.png等格式图片 先来看看播放器的功能(当然是很简陋的,没有很深入的设计): 1.点击图片列表中图片进行播放. 2.自动播放,播放的图片的间隔时间可以自己设定,时间的单位是秒. 3.自动播放的时候再点击图片列表会停止自动播放,保存当前播放的图片的顺序,再次点击自动播放的时候将从当前开始. 4.自动播放到最后一张图片的时候将会停止自动播放,再次点击自动播放的时候将会从第一张图片开始. 先上图看看具体功能: 说完功能我们聊聊制作思路和使用到的

自己动手写美女图片下载器

前言:看到标题可能会有人觉得似曾相识,没错,这篇博文的来源正是根据杨中科老师的<百度美女图片下载器开发教程.Net版>.因为我也观看了该教程,觉得很好玩,于是乎想自己独立完成一次,作为对之前基础学习内容的回顾和运用.以博文的形式和大家分享整个开发过程主要是想借此机会来重新整理下思路.锻炼下自己的表达能力.您如果对下面要用到知识点很熟悉,可忽略此文. 一.主要技术 Winform常用控件的基本使用 HttpWebRequest请求其他网站内容 Newtonsoft.Json.dll组件解析JSO

PyQt Phonon实现音乐播放器

现在网上关于PyQt的文章不多,话说那个官方文档也是烂的一塌糊涂,初次使用Phonon模块遇到很多疑问, 国外网站相关的资料多些,看到一些好的例子记录下来,主要是注释了一下,给后来者一些提示. # -*- coding: utf-8 -*- import sys from PyQt4 import QtCore, QtGui from PyQt4.phonon import Phonon class AudioPlayer(QtGui.QWidget): def __init__(self, u

自己动手写的音乐播放器

其实很早就有这个想法了,不求界面多么华丽,只求功能实现,想来也不会很难,音乐播放器无非也就是些IO的操作,我写的山寨音乐播放器暂不支持在线播放,如果要播放的话,要将音乐文件下载到本地,通过IO操作读入程序中来,废话不多说了,界面如下(参考了传智播客蒋坤老师的相关课程): 一些变量的定义及含义: string temp1 = null; string temp2 = null; //设置添加曲目的路径 string strSearchPath; //定时退出的时间 int iSecond; boo

自己写的音乐播放器Demo开源给需要学习的人,大家编程路上一直进步,

本项目使用到的技术 1:网络请求以及图片加载用的是volley框架 2:播放音乐使用MediaPlayer类 3:数据来源使用JSON解析 4:登录收藏功能使用的SQLite实现 5:Android 6.0动态权限申请 下面是运行时图片 图就这么多,音乐的api接口调用的是易源数据的QQ音乐接口, 关于播放进度时间的,我记得我写了,但是没找到,这里把思路说一下,具体思路是MediaPlayer播放音乐可以得到播放音乐的总大小,已经播放的位置,使用一个定时器,实时获取MediaPlayer的播放位

pyqt记录内容(音乐播放器)

#这是UI文件 # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'AudioPlayerDialog.ui' # # Created: Wed Dec 04 10:46:57 2013 #      by: PyQt4 UI code generator 4.9.6 # # WARNING! All changes made in this file will be lost! from P