python图形化进度条 实战一(GUI干货)

前言

其实不单单是python语言,相信很多其他语言的朋友也都很苦恼一件事,那就是图形化界面进度条的做法

我刚接触python tkinter图形化界面时也是一脸懵逼,当时连多线程、多进程都搞不明白的我又怎能搞懂图形化界面。出于对python的热爱,使我一直坚持走到了这步,一路遇到了很多艰险,接下来我把整体的思路和代码实现给大家分享一下。

制作进度条目的

当你觉得需要制作进度条时,肯定是要处理大量数据或者处理大型文件,这时,制作一个进度条可以很直观的显示当前作业进度,也使整个界面显得不是很古板。

制作进度条思路

此处代码只讲python tkinter
如果是有大量任务要处理,类似我上篇文章
就把整个要处理的任务数量存到一个变量中,再用进度条总长度除以这个变量,就能得到每次处理完一个任务进度条增加的长度。
代码展示
代码很乱凑合看吧
代码中的进度条库,来自tkinter.ttk

v = int(soup.body.find_all(name = 'em',attrs = {'class':'num'})[0].string.split('/')[1])+1 #漫画搜索关键字的总页数放到变量v里
for p in range(1,v):
	r=requests.post(url+'/index.php?m=vod-search-pg-'+str(p)+'-wd-'+kw+'.html') #按关键字爬取每页的漫画
	soup=BeautifulSoup(r.text,'html.parser')
	pageNumList = soup.find_all(name = 'li',attrs = {'class':'vbox'}) #把每页漫画url以列表形式放入pageNumList变量中,以便制作进度条使用			
	for x in pageNumList:	
		self.progress['value'] += 100/(len(pageNumList)*(v-1)) #(重要!!)100为进度条总长度,进度条每次增加的量=进度条总长度/(每页漫画数量*总页数-1)这个-1最好去掉,没有用
		self.urlData[x.a['title']] = url+x.a['href'] #把处理后的数据放入变量中,供使用

更多代码请看我上篇文章(点我)
若是要处理大型文件的上传、下载等的进度条制作,我目前还没有发现怎么做,将来如果有办法的话会再出一篇文章讲。

最后挺一下同行,微信公众号:
戴维计算机管家服务

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值