python
# sg.加法运算
# 深度改进,高度接近现代可视化语言如VB, C#(窗口上的所有元素均为对象)
# 所有取值、赋值均用“ 对象.方法() ”
# 原PySimpleGUI中有意淡化 对象、属性 的概念,表示方法模糊不清:
# result = values['-INPUT1-'] #属性=值
# result = window['-INPUT1-'].get() #对象.方法()
# result = input1.get() #现在可以这样!!!
import PySimpleGUI as sg
input1 = sg.Input(size=8) # 一律省去了标记,input1 = window['-INPUT1-']
input2 = sg.Input(size=8)
label1 = sg.Text('result')
line1 = sg.ProgressBar(100)
button1 = sg.Button('add')
button2 = sg.Button('clear')
button3 = sg.Button('exit')
# 所有变量均为对象
layout=[
[input1, input2, label1], # 布局更清晰直观,不易出错
[line1],
[button1, button2, button3]
]
window = sg.Window('slow calculator', layout)
while True:
event, value = window.read() # 测试:value, values都可以, 与调用时一致即可
if event == sg.WINDOW_CLOSED : break
# 所有取值、赋值均用“ 对象.方法() ”
if event == 'add':
num1 = int(input1.get())
num2 = int(input2.get())
label1.update(str(num1 + num2))
tst=label1.get() # 测试:label也可以get()了
sg.popup(tst)
if event == 'clear':
input1.update('')
input2.update('')
label1.update('')
if event == 'exit':
exit(0) # break