所以,我想要的是当用户在我的科学计算器中使用按钮而不是键盘写东西时,指针应该在字符串的末尾移动,但是目前找不到指针移动到哪里的方法字符串以 PySimpleGui 结尾。
layout = [
[sg.InputText('', key='equation', text_color='white', background_color=('#343434'), size = (26, 20), font=("Helvetica", 30))],
[sg.Button('(', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button(')', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('Del', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('AC', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('shift', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('+', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20))],
[sg.Button('1', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('2', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('3', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('log', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('ln', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('-', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20))],
[sg.Button('4', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('5', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('6', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('sin', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('tan', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('*', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20))],
[sg.Button('7', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('8', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('9', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('exp', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('cos', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('/', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20))],
[sg.Button('.', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('0', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('=', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('π', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('sqrt', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20)),
sg.Button('%', button_color=('white', 'blue'), size=(5, 1), font=("Helvetica", 20))]
]
window = sg.Window('Ameer Generator', layout, background_color="#343434",
icon = ".\icon\icon.ico")
while True:
event, values = window.Read()
if event == 'Exit':
break
if event != 'shift' and event != '!' and event != 'AC' and event != '=' and event != 'π' and event != 'C':
window.Element('equation').Update(values['equation'] + event)
if event == '=':
equate(values['equation'])
if event == 'AC':
window.Element('equation').Update('')
if event == 'Del':
equation = values['equation']
equation = equation[:-1]
window.Element('equation').Update(equation)
window.Close()