我没有用户输入"作业名称",而是希望它成为Tkinter下拉菜单。
我猜想这个想法是将Jobname附加到Table中的名字列表。如何在tkinter下拉列表中显示它?
Jobname = []
...
for row in rows:
data = "%s %s %s %s %s" % (row["Id"], row["Title"], row["Date"], row["Time"], row["Duration"])
movieList.append(data)
print data
我的代码
def reportdata():
clear()
w11 = Label(fr, text="Job Name : ")
w11.grid(row=1, column=0)
listlab.append(w11)
w22 = Label(fr, text="Job Start Date: ")
w22.grid(row=2, column=0)
listlab.append(w22)
w33 = Label(fr, text="Job End Date: ")
w33.grid(row=3, column=0)
listlab.append(w33)
e11 = Entry(fr, textvariable=jjname)
e11.grid(row=1, column=1)
listlab.append(e11)
e22 = Entry(fr, textvariable=jjdates)
e22.grid(row=2, column=1)
listlab.append(e22)
e33 = Entry(fr, textvariable=jjdatee)
e33.grid(row=3, column=1)
listlab.append(e33)
mbuttonn = Button(fr, text="Generate", command=savexl)
mbuttonn.grid(row=4, column=3)
listlab.append(mbuttonn)
答案 0 :(得分:2)
请参阅下面的示例,了解如何使用list
填充tkinter
OptionMenu
:
from tkinter import *
root = Tk()
a = [] #creates a list to store the job names in
var = StringVar() #creates a stringvar to store the value of options
for i in range(20): #fills list with nonsense jobs for troubleshooting
a.append("Job Name "+str(i))
var.set(a[0]) #sets the default option of options
options = OptionMenu(root, var, *a) #createa an optionmenu populated with every element of the list
button = Button(root, text="Ok", command=lambda:print(var.get())) #prints the current value of options
options.pack()
button.pack()
这使用list
来填充OptionMenu
及其所有元素,然后我们创建一个button
来打印OptionMenu
的当前值}。
如果您可以将SQL导入的数据导入list
,则可以使用与上述相同的逻辑。