添加新字符串后指针不会在 Pysimplegui 中自动移动
Pointer is not automatically moving in Pysimplegui after adding a new string
所以,我想要的是当用户在我的科学计算器中使用按钮而不是键盘写东西时,指针应该移动到字符串的末尾,但是目前找不到方法在 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()
需要更改代码以将光标移动到末尾。从 GitHub 获取一个新的 PySimpleGUI.py 文件,它会起作用。
所以,我想要的是当用户在我的科学计算器中使用按钮而不是键盘写东西时,指针应该移动到字符串的末尾,但是目前找不到方法在 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()
需要更改代码以将光标移动到末尾。从 GitHub 获取一个新的 PySimpleGUI.py 文件,它会起作用。