超市购物结算器
import tkinter
import tkinter as tk
from tkinter import ttk
window = tkinter.Tk()
window.geometry("700x800")
window.configure(bg="#A9A9A9")
stort1 = tkinter.Label(window,text = "水果很贵超市\n""-----------------------------------",fg="yellow",bg="red",font=("宋体",18),height=3).pack()
shuiguo_name = ['西瓜', '苹果', '香蕉', '榴莲', '脐橙', '红枣', '芒果', '哈密瓜']
shuiguo_monge = [10,20,12,50,13,14,20,9]
shuiguo_num = [1,2,3,4,5,6,7,8]
columns = ("水果名字", "水果价格(美元)","序号")
treeview = ttk.Treeview(window, height=8, show="headings", columns=columns)
treeview.heading("水果名字", text="水果名字")
treeview.heading("水果价格(美元)", text="水果价格(美元)")
treeview.heading("序号", text="序号")
treeview.place(x=20, y=85)
treeview.column("水果名字", width=190, anchor='center')
treeview.column("水果价格(美元)", width=190, anchor='center')
treeview.column("序号", width=50, anchor='center')
def test():
for i in range(min(len(shuiguo_name), len(shuiguo_monge),len(shuiguo_num))):
treeview.insert('', i, values=(shuiguo_name[i], shuiguo_monge[i],shuiguo_num[i]))
tk.Button(window,text='查看水果',bg="black", width=20, height=2, fg='pink',command=test).place(x=165,y=275)
t1 = tk.Label(window, text="你有多钱")
t1.pack()
t1.place(x=500,y=105)
t2 = tk.Label(window, text="序号")
t2.pack()
t2.place(x=500,y=175)
t3 = tk.Label(window, text="数量")
t3.pack()
t3.place(x=500,y=220)
x1 = tk.Entry(window,bd=5,width=10)
x1.pack()
x1.place(x=570,y=100)
x2 = tk.Entry(window,bd=5,width=10)
x2.pack()
x2.place(x=570,y=175)
x3 = tk.Entry(window,bd=5,width=10)
x3.pack()
x3.place(x=570,y=220)
stort2 = tkinter.Label(window,text = "购物车\n""------------------------------",fg="yellow",bg="green",font=("宋体",15),height=2,width=25).place(x=105,y=335)
text = tk.Text(window,width=61,height=20,bg="#696969",bd=8)
text.place(x=10,y=390)
text=tk.Text(window)
tk.Button(window,text='结算',bg="black", width=20, height=2, fg='#ff8c00').place(x=510,y=420)
str_name = '你要购买的水果'
str_price = '你需要支付的金额'
str_rest = '你剩余的金额为'
def table():
for i in range(len(fruit_price)):
table_main.insert('', i, values=(fruit_name[i], fruit_price[i], fruit_num[i]))
def main():
# global str_name, str_price
quantity = int(ent_quantity.get())
fruit_price = int(ent_fruit_num.get())
money = int(Money.get())
if fruit_num < 1 or fruit_num > 8:
tk.Label(window, text='输入有误,请输入1-8之间的序号').place(x=540, y=260)
Total_price = quantity*fruit_price[fruit_num-1]
if money < Total_price:
tk.Label(window, text='大人钱不够!\n请你点击 ''退出'' 退出程序!!', width=20, height=10, font=('Arial', 30), bg='black', fg='red').place(x=40, y=100)
butt_close = tk.Button(window, text='退出', bd=10, width=15, height=3, command=close)
butt_close.place(x=200, y=450)
else:
txt_Text.insert('end', str_name.ljust(20, '-') + str(fruit_name[fr - 1]) + '\n')
txt_Text.insert('end', str_price.ljust(19, '-') + str(Total_price) + '(美元)' + '\n')
txt_Text.insert('end', str_rest.ljust(20, '-')+str(money-Total_price)+'(美元)'+'\n')
txt_Text.insert('end', '欢迎下次光临!')
def close():
window.mainloop()
运行结果图:
实现的功能:
1.绘制“查看水果”按钮,功能:点击“查看水果”按钮,出现数据
2. 绘制输入三个输入框和标签:你有多钱,序号,数量
3. 绘制“结算”按钮,功能:点击“结算”按钮,出现购买的水果、支付金额和剩余金额数据