体育中心的网球场、羽毛球场和篮球场出租给学生作私人用途。时间以整时出租,网球场是每小时$9,羽毛球场每小时$8,篮球场每小时$10,出租时间在3小时以上打八折。编写一个GUI程序来计算预订费

from tkinter import *
import math

class BookFee(Frame):
    def __init__(self):

        Frame.__init__(self)
        self.master.title('VU College Sports Center')
        self.grid()
        self._var = IntVar()
        self._numLabel = Label(self, text='Number of hours')
        self._numLabel.grid(row=0, column=0, sticky=W)
        self._numEnt = Entry(self, width=7, textvariable=self._var)  # 输入所需的总时间
        self._numEnt.grid(row=0, column=1)

        # 创建单选按钮
        self._butvar = IntVar()
        self._R1 = Radiobutton(self, text='Tennis Courts', variable=self._butvar, value=9)
        self._R2 = Radiobutton(self, text='Badminton Courts', variable=self._butvar, value=8)
        self._R3 = Radiobutton(self, text='Netball Courts', variable=self._butvar, value=10)
        # 调整按钮格式
        self._R1.grid(row=1, column=1, sticky=W)
        self._R2.grid(row=2, column=1, sticky=W)
        self._R3.grid(row=3, column=1, sticky=W)

        # 创建提交按钮
        self._calbtn = Button(self, text='Compute', command=self._total)
        self._calbtn.grid(row=4, column=1, sticky=W)

        # 创建标签来显示最终价格
        self._finalvar1 = DoubleVar()
        self._finalvar2 = DoubleVar()
        self._priceLabel1 = Label(self, textvariable=self._finalvar1)
        self._priceLabel2 = Label(self, textvariable=self._finalvar2)
        self._bokLabel = Label(self, text='Booking cost:$ ')
        self._discLabel = Label(self, text='Discounted cost:$ ')
        # 调整格式
        self._bokLabel.grid(row=5, column=0, sticky=W)
        self._priceLabel1.grid(row=5, column=1, sticky=W)
        self._discLabel.grid(row=6, column=0, sticky=W)
        self._priceLabel2.grid(row=6, column=1, sticky=W)

        # 计算原预定价格和折扣价
    def _total(self):
        original = 0  # 起始价格为零
        if self._var.get() > 3:  # 满足折扣条件
            book = self._var.get() * self._butvar.get() * 0.8
            self._finalvar1.set(f'${original:.2f}')
            self._finalvar2.set(f'${book:.2f}')
        else:
            book = self._var.get() * self._butvar.get()
            self._finalvar1.set(f'${book:.2f}')
            self._finalvar2.set(f'${original:.2f}')


def main():
    BookFee().mainloop()

main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值