巴蜀烂柯人 巴蜀烂柯人
淫荡成就梦想,猥琐引领时尚。
关注数: 40 粉丝数: 153 发帖数: 14,261 关注贴吧数: 67
请问各位大神如何将下拉菜单的文字设定成一个值? from tkinter import * from tkinter.ttk import Combobox class Calculator: def __init__(self): # 窗口和标题 window = Tk() window.title("价格计算器") # 定义StringVar对象动态存储输入框的值 self.fruitQTYVar = StringVar() self.fruittypeVar = ['苹果','梨子','香蕉'] self.totaVar = StringVar() # 设置一些默认值 self.total.set("0.00") # 整体面板,方便设置总体的边距 frame = Frame(window) frame.pack(padx=10, pady=10) # 将标签排列在面板的第一列 Label(frame, text="水果种类",font = ('黑体',20)).grid(row=1, column=1,sticky=W) Label(frame, text="水果单价",font = ('黑体',20)).grid(row=2, column=1, pady=5,sticky=W) Label(frame, text="水果总价",font = ('黑体',20)).grid(row=3, column=1, pady=5,sticky=W) # textvariable = self.amountVar 由相应的StringVar对象动态保存输入框中的文本 Entry(frame, justify=RIGHT, textvariable=self.fruitQTYVar,font = ('黑体',20)).grid(row=1, column=2) Combobox(frame, justify=RIGHT,values=self.fruittypeVar,font = ('黑体',20)).grid(row=2, column=2) Label(frame, text="0.00",textvariable=self.totaVar,font = ('黑体',20)).grid(row=3, column=2, sticky=E) # 面板第三列,一堆Message存储单位 Message(frame, text="米",font = ('黑体',20)).grid(row=1, column=3) Message(frame, text="米",font = ('黑体',20)).grid(row=2, column=3) Message(frame, text="米",font = ('黑体',20)).grid(row=3, column=3) # 空Frame以撑开空间 Frame(frame, height=10).grid(row=19, column=1, columnspan=3, pady=5) # 按钮,事件监听函数为calculate Button(frame, width=40, text="计算", command=self.calculate,font = ('黑体',20)).grid(row=20, column=1, columnspan=3, pady=0) # 按钮点击监听 def calculate(self): # 获取输入的参数 fruitQTY = eval(self.fruitQTYVar.get()) # 获取名称填入对应价格 fruitprice = fruittype if fruittype = 苹果 fruitprice = 5 if fruittype = 梨子 fruitprice = 6 if fruittype = 香蕉 fruitprice = 8 # 计算价格 totalprice = fruitQTY * fruitprice # 将计算结果设置给控件 self.totalVar.set(format(totalprice,".2f"))
1 下一页