大佬教程收集整理的这篇文章主要介绍了wxPython中如何让仪表跟随Thread中的下载功能?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已成为 YouTube 下载器,但仪表进度不遵循下载此视频的功能 我希望仪表从视频下载开始,当下载完成时仪表完成
@R_502_5565@ wx
from pytube @R_502_5565@ YouTube
from time @R_502_5565@ sleep
from threading @R_502_5565@ Thread
class Tube(wx.Frame):
def __init__(self,*args,**kwargs):
super(Tube,self,**kwargs).__init__(parent=None,ID=wx.ID_ANY,Title="New Frame",size=(600,400))
self.Centre()
self.panel = wx.Panel(self,name="New Panel")
self.textlink = wx.StaticText(parent=self.panel,label="Edit YouTube URL",pos=(100,50))
self.editlink = wx.TextCtrl(parent=self.panel,size=(200,25),pos=(250,50))
self.downloadbutton = wx.button(parent=self.panel,label="Download VIDeo",100))
self.downloadbutton.Bind(event=wx.EVT_button,handler=self.thread,source=self.downloadbutton)
self.progress = wx.Gauge(parent=self.panel,range=100,pos=(200,200))
self.Show()
def progressbar(self,**kwargs):
for value in range(101):
wx.CallAfter(self.progress.SetValue,value)
sleep(0.2)
def Download(self,**kwargs):
self.vIDeo = YouTube(self.editlink.GetValue())
self.stream = self.vIDeo.streams.get_lowest_resolution()
self.stream.download()
def thread(self,**kwargs):
self.threads = []
self.thread1 = Thread(target=self.Download)
self.thread2 = Thread(target=self.progressbar)
self.threads.append(self.thread1)
self.threads.append(self.thread2)
for thread in self.threads:
thread.setDaemon(True)
thread.start()
if __name__ == '__main__':
app = wx.App()
screen = Tube()
app.MainLoop()
为什么不使用 wxProgressDialog?
检查对话框示例以了解详细信息...
谢谢。
以上是大佬教程为你收集整理的wxPython中如何让仪表跟随Thread中的下载功能?全部内容,希望文章能够帮你解决wxPython中如何让仪表跟随Thread中的下载功能?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。