0

所以,我想要的是当用户在我的科学计算器中使用按钮而不是键盘写东西时,指针应该在字符串的末尾移动,但是目前找不到指针移动到哪里的方法字符串以 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()
4

1 回答 1

1

需要更改代码以将光标移动到末尾。从 GitHub 获取一个新的 PySimpleGUI.py 文件,它就可以工作了。

于 2019-08-23T18:00:50.860 回答