def show_sheet(self, sheet_name): self.textbox.tag_configure("left", justify="left") sheet = self.workbook[sheet_name] rows = sheet.max_row # 清空文本框 self.textbox.delete(1.0, tk.END) # 添加空白字符并设置标签 self.textbox.insert(tk.END, sheet_name + ":\n", "left") self.textbox.insert(tk.END, " " * 20, "combobox") # 创建下拉框并添加到文本框数据内容的后面 combobox = tk.ttk.Combobox(self.textbox, values=["下拉选项1", "下拉选项2", "下拉选项3"]) combobox.pack(side=tk.TOP, padx=10, pady=5) self.textbox.window_create(tk.END, window=combobox) # 显示工作表内容 for row in sheet.iter_rows(values_only=True): line = "\t".join([str(cell) for cell in row]) + "\n" self.textbox.insert(tk.END, line)這段代碼修改為根據數據内容在相應數據後面添加下拉輸入框
时间: 2024-01-01 07:06:47 浏览: 65
可以按照以下方式修改代码:
```python
def show_sheet(self, sheet_name):
self.textbox.tag_configure("left", justify="left")
sheet = self.workbook[sheet_name]
rows = sheet.max_row
# 清空文本框
self.textbox.delete(1.0, tk.END)
# 添加空白字符并设置标签
self.textbox.insert(tk.END, sheet_name + ":\n", "left")
self.textbox.insert(tk.END, " " * 20, "combobox")
# 显示工作表内容,并在相应数据后面添加下拉输入框
for row in sheet.iter_rows(values_only=True):
for i, cell in enumerate(row):
line = str(cell) + "\t"
self.textbox.insert(tk.END, line)
if i == 0: # 在第一列数据后面添加下拉输入框
combobox = tk.ttk.Combobox(self.textbox, values=["下拉选项1", "下拉选项2", "下拉选项3"])
combobox.pack(side=tk.TOP, padx=10, pady=5)
self.textbox.window_create(tk.END, window=combobox)
self.textbox.insert(tk.END, "\n")
```
这样修改后,对于每一行数据,代码将会在第一列数据后面添加一个下拉输入框。你可以根据需要更改下拉输入框的值。
阅读全文