From fd6be01e8dd289f09cd8b806e1d129c8b2c83d26 Mon Sep 17 00:00:00 2001 From: w-mj Date: Mon, 25 Dec 2017 13:22:30 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BD=A6=E5=88=97=E8=A1=A8=E5=8F=AF=E4=BB=A5?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E5=81=9C=E8=BD=A6=E5=9C=BA=E7=9A=84=E5=90=8D?= =?UTF-8?q?=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- car.cpp | 3 ++- car.h | 1 + parkingLotManager.cpp | 5 +++++ parkingLotManager.h | 2 ++ 4 files changed, 10 insertions(+), 1 deletion(-) diff --git a/car.cpp b/car.cpp index 492119d..0252cc3 100644 --- a/car.cpp +++ b/car.cpp @@ -10,6 +10,7 @@ Car::Car(ParkingLotManager * manager, QGraphicsItem *parent, int dir, Car::Color m_target(PathPoint(this->pos(),this->rotation())), m_current(PathPoint(this->pos(),this->rotation())) { + m_manager = manager; m_pos = this->pos(); this->setRotation(dir); if(color==RANDOM) @@ -185,7 +186,7 @@ QString Car::getPosition() const } else if (m_status == waiting) { return "正在等候"; } else { - return QString("%1层%2号").arg(targetFloor).arg(num); + return QString("%1%2号").arg(m_manager->getParkingLotName(currentFloor)).arg(num); } } diff --git a/car.h b/car.h index 8798f13..58cc264 100644 --- a/car.h +++ b/car.h @@ -83,6 +83,7 @@ private: int currentFloor; int num; QTime startTime; + ParkingLotManager* m_manager; signals: void entry(Car* car); void stair(Car* car); diff --git a/parkingLotManager.cpp b/parkingLotManager.cpp index 05f08d8..8174bc9 100644 --- a/parkingLotManager.cpp +++ b/parkingLotManager.cpp @@ -136,6 +136,11 @@ void ParkingLotManager::drawPath(int n1, int n2) } } +QString ParkingLotManager::getParkingLotName(int pos) +{ + return m_widgets.at(pos)->getName(); +} + void ParkingLotManager::requestOut(Car *car, int exit) { if (exit == -1) diff --git a/parkingLotManager.h b/parkingLotManager.h index 85d533b..34e0119 100644 --- a/parkingLotManager.h +++ b/parkingLotManager.h @@ -31,6 +31,8 @@ public: void showUpStairFloor(void); void drawPath(int n1, int n2); + QString getParkingLotName(int pos); + public slots: void requestIn(Car* car); void requestOut(Car* car, int exit = -1);