pysimplegui table元素如何使用enable editing
时间: 2024-01-20 17:03:11 浏览: 105
要在PySimpleGUI中的Table元素中启用编辑功能,您需要在创建Table时设置`enable_events=True`和`bindings键`。然后,您可以在事件处理程序中捕获事件并使用`update`方法将编辑后的值更新到Table中。下面是一个示例代码片段:
```python
import PySimpleGUI as sg
data = [['John', 'Doe', '35'], ['Jane', 'Doe', '28'], ['Bob', 'Smith', '42']]
headers = ['First Name', 'Last Name', 'Age']
layout = [[sg.Table(values=data, headings=headers, max_col_width=25,
auto_size_columns=True,
enable_events=True,
key='-TABLE-',
bind_return_key=True,
num_rows=10)]]
window = sg.Window('Table Element', layout)
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
elif event == '-TABLE-':
row, col = values['-TABLE-']
if row != None and col != None:
old_value = data[row][col]
new_value = values[event]
data[row][col] = new_value
window['-TABLE-'].update(values=data)
window.close()
```
在这个例子中,我们创建了一个包含三列数据的Table,并将`enable_events`设置为True,以便我们可以捕获Table编辑事件。我们还指定了一个`key`,以便我们可以在事件处理程序中引用Table。在事件处理程序中,我们检查是否发生了Table编辑事件,然后使用`update`方法将新值更新到Table中。
阅读全文