python3.8+PySimpleGUI+进度条代码大全
1.python3.8+PySimpleGUI+进度条大全
2.效果图:
3.代码:
#导出模块
import PySimpleGUI as sg
import time
import inspect
from progress.bar import IncrementalBar #-----------登录界面,第1个窗口------------
def Denglu(): #登录界面,第1个窗口
layout = [
[sg.Text('账号:'),sg.Input(size=(20,1),key=('k1'))],
[sg.Text('密码:'),sg.Input(size=(20,1),key=('k2'),password_char='*')],
[sg.Submit(),sg.Cancel()],
] window = sg.Window('登录界面', layout)
event, values = window.read() while True:
if event == 'Cancel' or event == None: #成功
window.close()
break
elif event =='Submit':
if values['k1']=='admin' and values['k2']=='':
#这是指定账号和密码的,如果注册后,再从注册后的txt中调出,来判断?
sg.Popup('登录成功!')
window.close()
ZhuMain() break
else:
sg.Popup('请输入正确的账号和密码,否则退出。')
break window.close() #-------------定义进度条的代码及函数----------- #---定义函数:进度条1---
def Pb1(): #Pb=progress bar=进度条
import time
from progress.bar import IncrementalBar mylist = [1,2,3,4,5,6,7,8]
bar = IncrementalBar('进度条1', max = len(mylist)) #len是测列表数据的个数,8个 for item in mylist:
bar.next()
time.sleep(0.1) #延迟时间,0.1~1,之间比较好 bar.finish() #---定义函数:进度条2---
def Pb2():
from progress.bar import Bar
import time bar = Bar('Loading', fill='~', suffix='%(percent)d%%') #fill里面可以填充自己喜欢的符号 for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() #---定义函数:进度条3---
def Pb3():
from progress.bar import Bar
import time bar = Bar('进度条3', max=100) #max的值100,可调节 for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() #---定义函数:进度条4---
def Pb4():
from progress.bar import ChargingBar
import time bar = ChargingBar('进度条4', max=100) #max的值100,可调节 for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() #---定义函数:进度条5---
def Pb5():
from progress.bar import FillingSquaresBar
import time bar = FillingSquaresBar('进度条5', max=100) #max的值100,可调节 for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() #---定义函数:进度条6---
def Pb6():
from progress.bar import FillingCirclesBar
import time bar = FillingCirclesBar('进度条6', max=100) #max的值100,可调节 for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() def Pb7():
from progress.bar import IncrementalBar
import time bar = IncrementalBar('进度条7', max=100) #max的值100,可调节 for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() def Pb8():
from progress.bar import PixelBar
import time bar = PixelBar('进度条8', max=100) #max的值100,可调节 for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() def Pb9():
from progress.bar import ShadyBar
import time bar = ShadyBar('进度条9', max=100) #max的值100,可调节 for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() def Pb10():
from progress.spinner import Spinner
#from progress.spinner import MoonSpinner
#from progress.spinner import PieSpinner
#from progress.spinner import PixelSpinner
#from progress.spinner import LineSpinner import time bar = Spinner('进度条10', max=100) #max的值100,可调节
#bar = MoonSpinner('进度条10', max=100)
#bar = PieSpinner('进度条10', max=100)
#bar = PixelSpinner('进度条10', max=100)
#bar = LineSpinner('进度条10', max=100) for i in range(100): #这个也需要适当调节
bar.next()
time.sleep(0.1) #延迟时间,可调节,0.1~1之间最佳 bar.finish() def Pb11():
from alive_progress import alive_bar
import time items = range(100) with alive_bar(len(items)) as bar:
for item in items:
bar()
time.sleep(0.1) def Pb12():
import PySimpleGUI as sg
import time mylist = [1,2,3,4,5,6,7,8] for i, item in enumerate(mylist):
sg.one_line_progress_meter('进度条12', i+1, len(mylist), '-key-')
time.sleep(1) #时间选择1最好,因为8个有点短 def Pb13(): #经典,整合后出现在GUI界面上
import PySimpleGUI as sg
import time mylist = [1,2,3,4,5,6,7,8]
progressbar = [ [sg.ProgressBar(len(mylist), orientation='h', size=(51, 10), key='progressbar')]]
outputwin = [ [sg.Output(size=(78,20))]]
layout = [ [sg.Frame('Progress',layout= progressbar)], [sg.Frame('Output', layout = outputwin)], [sg.Submit('Start'),sg.Cancel()]] window = sg.Window('Custom Progress Meter', layout) progress_bar = window['progressbar'] while True:
event, values = window.read(timeout=10)
if event == 'Cancel' or event is None:
break
elif event=='Start':
for i,item in enumerate(mylist):
print(item)
time.sleep(1)
progress_bar.UpdateBar(i+1) window.close() # -------------------------------- GUI Starts Here -------------------------------#
# fig = your figure you want to display. Assumption is that 'fig' holds the #
# information to display. #
# --------------------------------------------------------------------------------#
#主窗口界面设计
def ZhuMain():
fig_dict = {'进度条1':Pb1,'进度条2':Pb2,'进度条3':Pb3,'进度条4':Pb4,'进度条5':Pb5,
'进度条6':Pb6,'进度条7':Pb7,'进度条8':Pb8,'进度条9':Pb9,'进度条10':Pb10,
'进度条11':Pb11,'进度条12':Pb12,'进度条13':Pb13} sg.theme('LightGreen') #主题背景设计,默认银河灰 # define the form layout
listbox_values = list(fig_dict) col_listbox = [
[sg.Listbox(values=listbox_values, enable_events=True, size=(28, len(listbox_values)), key='-LISTBOX-')],
[sg.Text('★' * 15)],
[sg.Exit(size=(5, 2))]
] #布局
layout = [
[sg.Text('最全进度条及代码整理', font=('current 10'))],
[sg.Col(col_listbox, pad=(5, (3, 330))),
sg.MLine(size=(50, 30), pad=(5, (3, 90)), key='-MULTILINE-')] ,#第2行有3个布局 ] # create the form and show it without the plot
window = sg.Window('Python3下的最全的进度条整理', layout, grab_anywhere=False, finalize=True) # The GUI Event Loop
while True:
event, values = window.read()
# helps greatly when debugging
if event in (None, 'Exit'): # if user closed window or clicked Exit button
break choice = values['-LISTBOX-'][0] # get first listbox item chosen (returned as a list)
func = fig_dict[choice] # get function to call from the dictionary
window['-MULTILINE-'].update(inspect.getsource(func)) # show source code to function in multiline window.close() if __name__ == '__main__':
Denglu()
python3.8+PySimpleGUI+进度条代码大全的更多相关文章
- python3 简单进度条代码
进度条代码函数实现 import sys, time class ShowProcess(object): """ 显示处理进度的类 调用该类相关函数即可实现处理进度的显 ...
- python3如何打印进度条
Python3 中打印进度条(#)信息: 代码: import sys,time for i in range(50): sys.stdout.write("#") sys.std ...
- js进度条源码下载—js进度条代码
现在很多网站会用到进入网站特效,到网页没有加载完成的时候,会有一个loding特效,加载完了之后才能看到页面,今天就带着做一个js进度条效果,今天要做的效果是纯js进度条加载,没有用到框架,方便大家进 ...
- python进度条代码
import sys import time def view_bar(num,total): rate = num / total rate_num = int(rate * 100) r = ' ...
- div+css进度条
效果图: 进度条代码: <style type="text/css"> 红色:background-color:f05153:border:1px solid #f05 ...
- 一个Notification 进度条插件(android,NJS实现,直接就可使用)
参考文章:http://ask.dcloud.net.cn/article/503 源码地址下载 如题,分享一个Notification 进度条插件(android,用js调用原生api实现,直接就可 ...
- asp.net 的一个简单进度条功能
我们先看下效果 我点击了按钮后他会显示进度页面,进度完成后,进度条消失,其实也是比较简单的了. 我们需要一个进度条代码文件ProgressBar.htm(注意:是没有head这些标签的) <sc ...
- Bootstrap 警告、进度条、列表组、面板
摘要:该部分包括警告.进度条.列表组.面板等部分. 1.警告(alert) 1.1 基本的警告(.alert) 警告的基类是 .alert .和其他样式类一块使用.例如: .alert-success ...
- h5实现手机端等级进度条
h5实现等级进度条 需求如下: 实现一个动画进度条,页面一打开实现一个进度条动画,因为App这个页面会经常改,所以没有使用原审Android或者IOS来实现,希望通过H5来做: 服务器端返回如下数据: ...
随机推荐
- [Netcat] 断线重连 自动重连
今天想做些操作,所以想到了nc 但是nc太过于轻量级 所以 导致我没有找到他的断线重连功能 然后我就想到了windows的神器之一 vbs脚本 vbs代码如下 Dim a,b set a= WScri ...
- html集合
<!DOCTYPE> //声明文档类型 <!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前. <!DOCTYPE> ...
- EQ实现
原理参考: https://www.cnblogs.com/fellow1988/p/9189338.html https://www.cnblogs.com/fellow1988/p/9136346 ...
- Java基础(十二)之包和权限访问
软件包 软件包解决了两个类名字一样的问题.软件包就是一个"文件夹". 包名的命名规范:1.要求所有字母都小写:2.包名一般情况下,是你的域名倒过来写.比如baidu.com,pac ...
- git 提交的时候 建立排除文件夹或者文件
1.在Git的根仓库下 touch .gitignore 2.编辑这个文件
- arcgis字段计算器
arcgis字段计算器 一.VB脚本 1.取某字段前几位或者后几位 ) ) 2.合并字段,中间加符号 Dim a if [ZDDM2] ="" Then a= [ZDDM1] el ...
- SpringCloud Netflix Ribbon
Eureka客户端的负载均衡:从Eureka server拿到节点列表,客户端自己使用负载均衡的算法确定要使用的节点: Eureka服务端的负载均衡:服务端使用负载均衡的算法,从节点列表中确定要使用的 ...
- CSS中的z-index属性如何使用
z-index属性介绍 只有设置了定位我们才会使用到该z-index属性,如:固定定位.相对定位.绝对定位. 定位元素默认的z-index属性值是0. 如果2个定位的元素都没有设置z-index属性, ...
- win7安装mysql数据库
1. 软件准备,以64位系统为例如果是32位的下载32位压缩包即可] https://dev.mysql.com/downloads/mysql/ 2.下载解压到本地,将解压路径的bin目录配置到环境 ...
- opencv:图像边缘发现
拉普拉斯算子 Mat dst; // ksize 3 ,必须是奇数,不同大小会有不同的效果 Laplacian(src, dst, -1, 3, 1.0, 0, BORDER_DEFAULT); im ...