【发布时间】:2020-12-09 20:22:45
【问题描述】:
我正在使用 pysimplegui 构建一个 gui,其中包含许多输入框,如下所示:
为了给用户带来舒适的导航体验,我添加了向下和向上按钮,其目的是根据按下的按钮将滚动条一直向下或向上移动:
form = sg.Window('analysis').Layout([
[sg.Column(layout, size=(width / 3, height / 2), scrollable=True, key = "Column")],
[sg.OK(), sg.Button('Up', key = "up"), sg.Button('Down', key = "down")]
])
这段代码基本上是创建一个窗口,里面有一个列元素,里面有一个预先创建的布局(包含里面的所有输入框),一个预先创建的大小,启用可滚动和一个我想用来控制的键滚动条位置。
另一行包含所有讨论的按钮。
在病房之后,我创建了一个循环来管理触发时的所有事件:
while True:
event, values = form.read()
if(event == sg.WIN_CLOSED):
break
elif(event == "down"):
form.Element('Column').set_vscroll_position(1.0)
elif(enent == "up"):
form.Element('Column').set_vscroll_position(0.0)
按钮未按计划动作,触发时弹出警告:
设置垂直滚动的警告(yview_moveto 失败) 'TkScrollableFrame' 对象没有属性 'yview_moveto
似乎我根据 pysimplegui 的文档做了所有事情,但它不起作用。 任何帮助将不胜感激。
非常感谢革命。
操作系统:Windows 10 Python 版本:3.8.1
【问题讨论】:
标签: python pysimplegui