python - 使用 Tkinter OptionMenu 小部件的数据库查询
问题描述
我正在尝试学习如何使用 MenuOption 选项查询我的数据库。当用户单击 MenuOption 按钮时,它会正确显示多个选项,但我不确定如何让它查询数据库以查找与数据库表命名相同的选项。
我已经尝试了许多不同的方法来使用我一直在阅读的在线信息,但似乎还没有任何效果。
我必须在变量方法中遗漏一些东西来调用作为数据库中表的选项名称。
一旦它从选定的表中提取数据,我就需要用数据填充一个小部件,我认为 ComboBox 最适合这个?
任何帮助将非常感激。
代码:
def window_2():
window_2 = tkinter.Tk()
image2 = 'window2.gif'
bg_image2 = tkinter.PhotoImage(file=image2)
w = 1024
h = 612
ws = window_2.winfo_screenwidth()
hs = window_2.winfo_screenheight()
x = (ws/2) - (w/2)
y = (hs/2) - (h/2)
window_2.geometry('%dx%d+%d+%d' % (w, h, x, y))
panel2 =tkinter.Label(window_2, image=bg_image2)
panel2.pack(side='top', fill='both', expand='yes')
panel2.image = bg_image2
window_2.title('Recipes')
window_2.wm_iconbitmap('recipe.ico')
def select():
# optional
selection = var.get()
c.execute('SELECT * FROM Appetizers') # THIS ONLY PRINT THAT TABLE "Appetizer" BECAUSE IT IS NAMED, I NEED TO REPLACE THAT WITH THE VARIABLE FOR THE SELECTION.
data = c.fetchall()
print(data)
var = tkinter.StringVar(window_2)
var.set('Menu')
choices = [
'Appetizers',
'Beef',
'Bread',
'Cake',
'Chicken',
'Chilli',
'Curry',
'Desert',
'Drinks',
'Egg',
'Fish',
'Pasta',
'Pork',
'Potato',
'Rice',
'Salad',
'Sandwich',
'Sauce',
'Sea Food',
'Slow Cooker',
'Soup',
'Stew',
'Tofu',
'Vegetables']
option = tkinter.OptionMenu(window_2, var, *choices)
option.place(x=215, y=120)
button = tkinter.Button(window_2, text="check value selected", command=select)
button.pack
button.place(x=370, y=120)
解决方案
推荐阅读
- java - 配置 log4j - 没有任何效果
- css - 如何调整离子卡的高度?
- python - 分离出“While”功能
- mysql - 在 Docker 中运行 2 个 Wordpress 安装
- jms - 未触发 ActiveMQ jmsActivationSpec 打开 Liberty JMS
- javascript - 设置为制作获取片段的 chrome 扩展程序?
- python - 是否可以使用线程在单个代码中运行套接字连接的服务器和客户端部分?
- sql - 如何得到这个结果?
- javascript - 使用 POST 调用的响应更新 Chartjs 数据?
- react-native - pointerEvents={'none'} 在 Android Expo React Native 中不起作用