[英]How to automatically resize an input-box in PySimpleGUI
这是我第一次使用 Stackoverflow。
我是初学者,所以我可能会按错误的顺序做事或做错事。 我正在学习 PySimpleGUI。
我使用带有“浏览”按钮的输入框,如下所示:
layout = [
[sg.Input(size=(30, 1), key='-IN1-', enable_events=True), sg.Button('Browse')],
[sg.Input(k='-IN2-'), sg.Button('-Date1-')],
[sg.T('Starting Year:'), sg.Input(size=(5, 1), k='-YEAR-')],
[sg.Input(k='-IN3-'), sg.Button('-Date2-')],
[sg.B('Go'), sg.B('Exit')]
]
window = sg.Window("Chooser Using Popups", layout, keep_on_top=True)
while True:
event, values = window.read()
if event in (sg.WIN_CLOSED, 'Exit'):
break
if event == 'Browse':
filename = sg.popup_get_file('', no_window=True, keep_on_top=True)
layout = [
[sg.Input(size=(len(filename), 1), key='-IN1-'), sg.Button('Browse')],
[sg.Input(size=(len(filename), 1), key='-IN1-', enable_events=True), sg.Button('Browse')],
[window['-IN1-'].update(filename)]
]
当我 select 文件路径太长时,我的输入框包含完整路径,但并不完全可见。
所以我正在寻找一种自动调整输入框大小的方法。
我没有找到自动调整输入框大小的方法。
我试图获取文本长度以手动设置框尺寸,但我遇到了以下问题:
当我创建盒子时,我没有路径,所以我不知道它有多长。 获取路径后,我无法弄清楚如何更改输入框尺寸。 有点鸡腿的故事。
如何避免比盒子长的路径?
已经给我一个答案,它工作正常: starting_value = '' layout = [ [sg.Input(starting_value, size=(len(starting_value), 1), key='-IN1-', enable_events=True), sg.Button('浏览')], [sg.Input(k='-IN2-'), sg.Button('-Date1-')], [sg.T('开始年份:'), sg. Input(size=(5, 1), k='-YEAR-')], [sg.Input(k='-IN3-'), sg.Button('-Date2-')], [sg.B ('开始'), sg.B('退出')]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.