在Tkinter上用ex的数据创建一个下拉菜单

2024-09-26 22:54:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我想通过使用Tkinter和xlrd在Tkinter上创建一个下拉菜单。 下拉菜单的值应来自excel列表。到目前为止我只有这个:

i = 0
while i < 96:
    i = i+1
    m=sheet.cell_value(i,1)
    print(m)
mbuttonMaterial = Menubutton(tkFenster, text='Material')     
picks   = Menu(mbuttonMaterial)               
mbuttonMaterial.config(menu=picks)
picks.add_command(label=sheet.cell_value(8,1)+ '/'+sheet.cell_value(8,2),command = ChooseMaterial)
mbuttonMaterial.pack()
mbuttonMaterial.config(bg='white', bd=4, relief=RAISED)
mbuttonMaterial.place(x=54,y=200, width=100, height = 50)

我希望使用m作为变量,而不是值8。但只允许整数。我必须使用openpyxl吗?你有什么建议吗?也许还有别的办法。这是我第一次使用Python。在


Tags: config列表valuetkintercellexcelcommandsheet
1条回答
网友
1楼 · 发布于 2024-09-26 22:54:47

假设您能够从excel文档中检索到这些项,那么可以尝试将它们与varType一起添加到字典中。以下是来自tutorialspoint的修改示例:

from tkinter import Tk, Menubutton, Menu, IntVar, RAISED

top = Tk()

mb=  Menubutton ( top, text="condiments", relief=RAISED )
mb.grid()
mb.menu  =  Menu ( mb, tearoff = 0 )
mb["menu"]  =  mb.menu

menuItemVars = { "mayoVar": "mayo", "ketchVar": "ketchup", "mustardVar": "mustard" }

for key, value in menuItemVars.items():
    print(key, value)
    key = IntVar()
    mb.menu.add_checkbutton(label=value, variable=key)


mb.pack()
top.mainloop()

相关问题 更多 >

    热门问题