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+进度条代码大全的更多相关文章

  1. python3 简单进度条代码

    进度条代码函数实现 import sys, time class ShowProcess(object): """ 显示处理进度的类 调用该类相关函数即可实现处理进度的显 ...

  2. python3如何打印进度条

    Python3 中打印进度条(#)信息: 代码: import sys,time for i in range(50): sys.stdout.write("#") sys.std ...

  3. js进度条源码下载—js进度条代码

    现在很多网站会用到进入网站特效,到网页没有加载完成的时候,会有一个loding特效,加载完了之后才能看到页面,今天就带着做一个js进度条效果,今天要做的效果是纯js进度条加载,没有用到框架,方便大家进 ...

  4. python进度条代码

    import sys import time def view_bar(num,total): rate = num / total rate_num = int(rate * 100) r = ' ...

  5. div+css进度条

    效果图: 进度条代码: <style type="text/css"> 红色:background-color:f05153:border:1px solid #f05 ...

  6. 一个Notification 进度条插件(android,NJS实现,直接就可使用)

    参考文章:http://ask.dcloud.net.cn/article/503 源码地址下载 如题,分享一个Notification 进度条插件(android,用js调用原生api实现,直接就可 ...

  7. asp.net 的一个简单进度条功能

    我们先看下效果 我点击了按钮后他会显示进度页面,进度完成后,进度条消失,其实也是比较简单的了. 我们需要一个进度条代码文件ProgressBar.htm(注意:是没有head这些标签的) <sc ...

  8. Bootstrap 警告、进度条、列表组、面板

    摘要:该部分包括警告.进度条.列表组.面板等部分. 1.警告(alert) 1.1 基本的警告(.alert) 警告的基类是 .alert .和其他样式类一块使用.例如: .alert-success ...

  9. h5实现手机端等级进度条

    h5实现等级进度条 需求如下: 实现一个动画进度条,页面一打开实现一个进度条动画,因为App这个页面会经常改,所以没有使用原审Android或者IOS来实现,希望通过H5来做: 服务器端返回如下数据: ...

随机推荐

  1. php设计模式之面向接口开发实例代码

    <?php header("Content-type:text/html;charset=utf-8"); /** * 共同接口 */ interface db { func ...

  2. 通过FormData对象可以组装一组用 [XMLHttpRequest]发送请求的键/值对,它可以更灵活方便的发送表单数据。

    工作记录用 1 大概页面,点击选择按钮,选择文件,填写备注并可以上传前预览,然后点击上传按钮开始上传 2 html+js代码 <h2>Test</h2> <div id= ...

  3. 【C语言】指针函数例子

    #include<stdio.h> char* getword(char); char* getword(char c) { switch (c) { case'A':return&quo ...

  4. HTML学习(2)编辑器

    HTML编辑常用的编辑器:Notepad++.Sublime Text.VS Code 可以使用Emmet插件来提高编码速度. 注:emmet只支持32位的Notepad++. 注意这里要把这两个dl ...

  5. pwnable.kr-echo1-Writeup

    pwnable.kr - echo1 - writeup 原文链接:https://www.cnblogs.com/WangAoBo/p/pwnable_kr_echo1.html 旧题新做,发现这道 ...

  6. kali&BT5下利用nmap对mysql等数据库渗透与爆破

    如今Nmap的脚本引擎从一个普通的端口扫描器转变为具有攻击性的渗透测试工具 .随着nmap各种脚本的存在.到目前为止,我们甚至可以进行完整的SQL数据库渗透而不需要任何其他的工具. 今天就在kali下 ...

  7. Collection两个常见的集合类型: ArrayList可重复集有序 ,HashSet不可重复集

    package seday11; import java.util.ArrayList; import java.util.Collection; import java.util.HashSet; ...

  8. 学会C#可以做什么

    C#基于.NET Framework  和 .NET CORE平台 Client/Server 客户端/服务端 windows桌面应用程序 winform  2D WPF  3D Browser/Se ...

  9. SOCV/POCV 开篇 (1)

    1.功能:模拟工艺偏差对芯片性能的影响 2. 40nm之前 flat derate模型可以基本覆盖大部分情况 3.AOCV (Adance OCV) 考虑distance 和depth的影响. AOC ...

  10. IDF-CTF-简单的Elf逆向Writeup

    ElfCrackMe1 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !imp ...