编写程序,在窗体上放置提示标签、单选按钮、输入框、命令按钮和多行文本框。根据所选择不同景点的名称、门票价格和购买张数计算门票总价格。景点“周口电视塔”,“周口野生动物园”,“周口科技馆”的门票价格假设分别为:160,130,60元每张。 在输入框中输入购买的张数,单击“计算”按钮,将在多行文本框中显示景点名称、 门票张数,以及门票总价。
时间: 2024-02-16 20:01:25 浏览: 196
以下是一个简单的 Python Tkinter 景点门票计算器的代码示例:
```python
import tkinter as tk
class TicketCalculator:
def __init__(self):
self.window = tk.Tk()
self.window.title("景点门票计算器")
# 创建提示标签
self.label_spot = tk.Label(self.window, text="请选择景点:")
self.label_spot.grid(row=0, column=0, padx=10, pady=10)
self.label_amount = tk.Label(self.window, text="请输入购票数量:")
self.label_amount.grid(row=1, column=0, padx=10, pady=10)
# 创建单选按钮
self.spot_var = tk.StringVar()
self.spot_var.set("电视塔") # 默认选中电视塔
self.radio1 = tk.Radiobutton(self.window, text="周口电视塔", variable=self.spot_var, value="电视塔")
self.radio1.grid(row=0, column=1, padx=10, pady=10)
self.radio2 = tk.Radiobutton(self.window, text="周口野生动物园", variable=self.spot_var, value="动物园")
self.radio2.grid(row=0, column=2, padx=10, pady=10)
self.radio3 = tk.Radiobutton(self.window, text="周口科技馆", variable=self.spot_var, value="科技馆")
self.radio3.grid(row=0, column=3, padx=10, pady=10)
# 创建输入框
self.amount_entry = tk.Entry(self.window)
self.amount_entry.grid(row=1, column=1, columnspan=3, padx=10, pady=10)
# 创建命令按钮
self.button_calculate = tk.Button(self.window, text="计算", command=self.calculate)
self.button_calculate.grid(row=2, column=0, padx=10, pady=10)
# 创建多行文本框
self.text_result = tk.Text(self.window, width=50, height=5)
self.text_result.grid(row=3, column=0, columnspan=4, padx=10, pady=10)
self.window.mainloop()
def calculate(self):
spot = self.spot_var.get()
amount = int(self.amount_entry.get())
if spot == "电视塔":
price = 160
elif spot == "动物园":
price = 130
else:
price = 60
total_price = price * amount
result = f"{spot}门票:{amount}张,总价为{total_price}元\n"
self.text_result.insert(tk.END, result)
if __name__ == "__main__":
calculator = TicketCalculator()
```
该代码创建了一个带有单选按钮、输入框、命令按钮和多行文本框的 GUI 界面。当用户选择不同的景点名称并输入购买的门票数量后,程序将根据所选景点的门票价格计算门票总价格,并在多行文本框中显示景点名称、门票张数和门票总价。注意,为了使计算正确,我们使用 `int()` 函数将输入框中的值转换为整数。
阅读全文
相关推荐

















