【发布时间】:2021-04-24 10:43:18
【问题描述】:
我想用循环来生成输入表单,但是将List重写为Dict后,单选按钮不再是正确的文本属性。请给我一个提示。
这是我在下面使用 Dict 的代码。 (#TODO: 在可疑线上)
import PySimpleGUI as sg
form_items = {
'name': ['Alice', 'Bob', 'Charlie', 'Dave', 'Eve', 'Frank'],
'group': ['Google', 'Apple', 'Facebook', 'Amazon'],
'number': ['100', '200', '300', '400', '500', '600', '700', '800', '900']
}
radio = []
for i in range(len(form_items)):
radio.append([])
for i,v in enumerate(form_items):
for val in v:
attr = {
'text': val,
'group_id': len(val),
'key': val,
'enable_events': True,
'font': 'Helvetica 8'
}
radio[i].append([sg.R(**attr)])
cols = []
for i in range(len(form_items)):
attr = {
'layout': radio[i],
'size': (100, 100),
'scrollable': True,
'vertical_scroll_only':True
}
cols.append([sg.Col(**attr)])
frame = []
for i in range(len(form_items)):
attr = {
'layout': [cols[i]], #TODO:
'title': list(form_items.keys())[i],
}
frame.append([sg.Frame(**attr)])
layout = []
for i in range(len(form_items)):
layout.append(frame[i])
window = sg.Window('Sandbox', layout)
while True:
event, values = window.read()
if event in (None, 'Exit'):
break
window.close()
【问题讨论】:
标签: pysimplegui