Python tkinter组合框,如何选择字典键并打印相应的值?
python和tkinter非常新。我想创建多个组合框,从单个字典中独立选择,然后在单击“提交”按钮后打印相应的值。在没有错误和挫折的情况下,我所能做的就是打印所选的键 简单地说,我想在第一个组合框中选择A4,在第二个组合框中选择A7,单击Submit,在python shell中生成以下结果: 8.3 x 11.7 2.9 x 4.1 而不是这个结果: A4 A7 如有任何建议,将不胜感激Python tkinter组合框,如何选择字典键并打印相应的值?,python,dictionary,tkinter,combobox,key-value,Python,Dictionary,Tkinter,Combobox,Key Value,python和tkinter非常新。我想创建多个组合框,从单个字典中独立选择,然后在单击“提交”按钮后打印相应的值。在没有错误和挫折的情况下,我所能做的就是打印所选的键 简单地说,我想在第一个组合框中选择A4,在第二个组合框中选择A7,单击Submit,在python shell中生成以下结果: 8.3 x 11.7 2.9 x 4.1 而不是这个结果: A4 A7 如有任何建议,将不胜感激 import tkinter as tk from tkinter import ttk # Crea
import tkinter as tk
from tkinter import ttk
# Create instance
win = tk.Tk()
# Dictionary for combobox selection
Paper_sizes = {"":"", "A9":"1.5 x 2.0", "A8":"2.0 x 2.9",
"A7":"2.9 x 4.1", "A6":"4.1 x 5.8", "A5":"5.8 x 8.3",
"A4":"8.3 x 11.7", "A3":"11.7 x 16.5", "A2":"16.5 x 23.4",
"A1":"23.4 x 33.1", "A0":"33.1 x 46.8"}
# Combobox 1
ttk.Label(win, text="Choose a paper size").grid(column=1, row=0)
paper1 = tk.StringVar()
paper1_chosen = ttk.Combobox(win, width=12, textvariable=paper1, state='readonly')
paper1_chosen['values'] = sorted(list(Paper_sizes.keys()))
paper1_chosen.grid(column=1, row=1)
paper1_chosen.current(0)
# Combobox 2
ttk.Label(win, text="Choose a 2nd paper size").grid(column=1, row=2)
paper2 = tk.StringVar()
paper2_chosen = ttk.Combobox(win, width=12, textvariable=paper2, state='readonly')
paper2_chosen['values'] = sorted(list(Paper_sizes.keys()))
paper2_chosen.grid(column=1, row=3)
paper2_chosen.current(0)
# Button Click Event Function
def submit_button():
print(paper1_chosen.get())
print(paper2_chosen.get())
# Adding a Button
action = ttk.Button(win, text = "Submit", command = submit_button)
action.grid(column=2, row=4)
# Start GUI
win.mainloop()
将您的功能更改为此是否有帮助
def submit_button():
key1 = paper1_chosen.get()
key2 = paper2_chosen.get()
print(Paper_sizes[key1])
print(Paper_sizes[key2])
内部没有发生什么,只是从组合框选择中取出密钥并打印出相应的值对
希望您能理解,如果您有更多疑问,请告诉我
干杯