# _*_ coding:utf-8 _*_ import time import PySimpleGUI as sg import Tools menu_def=[ ['需处理的告警', ['华为GSM告警', '华为45G告警', '爱立信4G告警','---','荆州245告警']], ['现网配置',['4G现网配置','---','5G现网配置','---','GSM现网工参']], ] #3) 创建窗口 # ,location=(0,0), size=(1480,900) window=sg.Window('荆州移动项目工具',layout,resizable=True,keep_on_top=False,finalize=True,size=(720,450),font=('宋体',28)) # 全屏显示 window.maximize() #4) 事件循环 while True: event,values=window.read() #窗口的读取,有两个返回值(1.事件 2.值) #print(event,values) if event==None: #窗口关闭事件 break if event=='': #Cancel关闭事件 break if event == '华为GSM告警': Tools.HWGSM_GJ() if event == '华为45G告警': Tools.HWLNR_GJ() if event == '爱立信4G告警': Tools.ALX_GJ() if event == '荆州245告警': Tools.HW245_GJ() if event == '4G现网配置': Tools.HWLTE_XWPZ() if event == '5G现网配置': Tools.HW5G_XWPZ() if event == 'GSM现网工参': Tools.HWGSM_XWGC() #5) 关闭窗口 window.close() 加载文件、处理文件、保存文件 加入进度条
时间: 2024-01-11 19:05:24 浏览: 374
要在代码中添加进度条来显示文件加载、处理和保存的进度,可以按照以下步骤进行操作:
1. 在`layout`中添加一个进度条控件,例如:
```python
layout = [
[sg.Menu(menu_def)],
[sg.ProgressBar(100, orientation='h', size=(20, 20), key='progressbar')],
# 其他窗口布局代码
]
```
2. 在事件循环中更新进度条的值,并在需要时调用`window.refresh`方法来刷新窗口。具体操作如下:
```python
# 创建进度条变量
progress_value = 0
# 在事件循环中更新进度条
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
if event == '华为GSM告警':
# 重置进度条的值
progress_value = 0
# 加载文件
# 更新进度条的值
progress_value += 25
window['progressbar'].update(progress_value)
window.refresh()
# 处理文件
# 更新进度条的值
progress_value += 25
window['progressbar'].update(progress_value)
window.refresh()
# 保存文件
# 更新进度条的值
progress_value += 25
window['progressbar'].update(progress_value)
window.refresh()
# 其他操作
# 其他菜单选项的处理代码
# 关闭窗口
window.close()
```
在上述代码中,我们首先创建了一个进度条变量`progress_value`来保存进度条的当前值。然后,在点击"华为GSM告警"菜单选项时,我们将进度条的值重置为0,然后依次加载文件、处理文件和保存文件,每完成一步更新一次进度条的值。在更新进度条的值之后,我们使用`window.refresh`方法来刷新窗口,以确保进度条的更新显示。
请注意,以上代码只是一个示例,你需要根据实际的文件加载、处理和保存操作来修改代码。
阅读全文