写一个基于python和GUI的简单的停车场管理系统的程序
时间: 2024-05-03 08:18:00 浏览: 175
好的,这里是一个基于Python和Tkinter GUI库的简单停车场管理系统的程序:
```python
from tkinter import *
from tkinter import messagebox
class ParkingSystem:
def __init__(self, master):
self.master = master
master.title("停车场管理系统")
# 创建标签和按钮
self.label1 = Label(master, text="车牌号:")
self.label1.grid(row=0, column=0, padx=10, pady=10)
self.entry1 = Entry(master)
self.entry1.grid(row=0, column=1, padx=10, pady=10)
self.button1 = Button(master, text="进入", command=self.check_in)
self.button1.grid(row=0, column=2, padx=10, pady=10)
self.button2 = Button(master, text="离开", command=self.check_out)
self.button2.grid(row=0, column=3, padx=10, pady=10)
self.label2 = Label(master, text="当前停车数量: 0")
self.label2.grid(row=1, column=0, columnspan=4, padx=10, pady=10)
# 初始化停车场状态
self.total_parking_spaces = 10
self.current_parking_spaces = 0
self.parked_cars = {}
# 进入停车场
def check_in(self):
car_number = self.entry1.get()
if self.current_parking_spaces < self.total_parking_spaces:
self.parked_cars[car_number] = True
self.current_parking_spaces += 1
self.update_status()
messagebox.showinfo("进入", "车辆 %s 进入停车场。" % car_number)
else:
messagebox.showerror("进入失败", "停车场已满。")
# 离开停车场
def check_out(self):
car_number = self.entry1.get()
if car_number in self.parked_cars:
self.parked_cars.pop(car_number)
self.current_parking_spaces -= 1
self.update_status()
messagebox.showinfo("离开", "车辆 %s 离开停车场。" % car_number)
else:
messagebox.showerror("离开失败", "车辆 %s 不在停车场。" % car_number)
# 更新停车场状态
def update_status(self):
self.label2.config(text="当前停车数量: %d/%d" % (self.current_parking_spaces, self.total_parking_spaces))
root = Tk()
parking_system = ParkingSystem(root)
root.mainloop()
```
这个简单的停车场管理系统程序有以下功能:
1. 通过GUI界面输入车牌号码,可以将车辆进入停车场。
2. 当停车场已满时,不能再进入车辆,会弹出错误提示框。
3. 通过GUI界面输入车牌号码,可以将车辆从停车场离开。
4. 当车辆不在停车场时,不能离开停车场,会弹出错误提示框。
5. 程序会实时更新停车场的状态,包括当前停车数量和总停车位数。
阅读全文