根据PySimple文档,简单的使用一些控件, 代码片
.
// An highlighted block
import time
import PySimpleGUI as sg
def CreatForm():
sg.theme('DarkAmber')
# 所有窗口控件都可放在一个layout中
layout = [
# 下拉选择框可以是自定义数据,也可以是集合
[sg.Text('下拉选择框'), sg.InputCombo(['1','2'], size=(20, 3), key="ip", readonly=True)],
[sg.CalendarButton('开始时间', key='st', format=('%Y-%m-%d 00:00')), sg.InputText("", key="s_time")],
[sg.CalendarButton('结束时间', format=('%Y-%m-%d 23:59')), sg.InputText("", key="f_time")],
[sg.Text('输入框'), sg.InputText("", key="mrp")],
[sg.Button('下载'), sg.Button('取消')]]
# 创建窗体
window = sg.Window('SimpleUI', layout)
# 利用循环判断事件的发生
while True:
event, values = window.read()
# 判断某个事件的发生
if event == sg.WIN_CLOSED or event == '取消':
break
sg.popup("弹窗")
i = 0
while i<100:
# 进度条控件
sg.one_line_progress_meter(
# 标题
'进度条',
# 当前进度值
i + 1,
# 最大值
100,
# 进度条事件的key名称
'key',
# 可以写实时复制进度相关的值
"TEST" + str(i),
# 窗口布局方式 h为水平进度条 v为垂直进度条
orientation='h'
)
time.sleep(0.02) # 模拟0.02s 完成了千分之一的任务
i += 1
# 运行完成可根据key名称关闭窗口
sg.one_line_progress_meter_cancel("key")
window.close()
if __name__ == '__main__':
CreatForm()