1.1 导航窗口模块(NativeWidget)
1.1.1 模块说明
用于显示企业LOGO、时间、桌台号、当前消费总金额、各级子页面显示及各功能开始点餐、已点查询、酒店介绍、操作指南的选择控制等如图一。
1.1.2 模块接口
公有成员函数 | NativeWidget(QWidget *parent); | 构造函数用于初始化页面所有子窗口部件 | |
void showHotelLogo(); | 从数据库hotel_info表中获取企业LOGO,显示在logoLable控件上 | ||
Void showHomeBackdrop(); | 从数据库hotel_info表中获取首页背景图homebackdrop,显示在childWidgetLable控件上 | ||
void showSystemTime(); | 使用QDateTime中的静态共有函数currentDateTime()获取系统时间并显示到 dateTimeEdit控件上 | ||
void getCurrentInfo(); | 从数据库中取得当前终端的消费情况,包括人数、房间、菜肴数量、总消费金额、未提交菜肴数量显示于对控件上rightListWidget | ||
公有槽 | void startOrderSlot(); | 当客户点击了开始点餐时,捕获startOrderBtn点击信号,并NEW出StartOrderWidget类的 startOrder指针。 | |
void hadOrderSlot(); | 当客户点击了已点查询时,捕获hadOrderBtn点击信号,并NEW出HadOrderWidget类的 hadOrder指针。 | ||
void hotelInfoSlot(); | 当客户点击了酒店介绍时,捕获hotelInfoBtn点击信号,并NEW出HotelInfoWidget类的 hotelInfo指针。 | ||
void handleGuideSlot(); | 当客户点击了操作指南时,捕获handleGuideBtn点击信号,并NEW出HandleGuideWidget类的 hotelInfo指针。 | ||
void systemLoginSlot(); | 当点击了系统登陆时,捕获systemLoginBtn点击信号,并NEW出LoginWidget类的 hotelInfo指针。 | ||
void tableNameSlot(QString tName); | 将服务员在系统登陆后,选择的桌台号,显示所处桌台号到 roomEdit控件上 | ||
void homeSlot(); | 当客户点击了首页时,用于捕获点击信号。 | ||
void upPageSlot(); | 当客户点击了上一页时,用于捕获点击信号。 | ||
void timeOutSlot(); | 捕获每隔5秒发送超时信号,将导航窗口中moneyEdit控件中的totalMoney总金额刷新一次。 | ||
静态公有成员 | void showWidget(QWidget *widget); | 用于向左侧子页面窗口显示一个新的子窗口,并将这个子窗口指针添加到私有成员widgets容器类中。这样方便控制子页面之间的切换,更容易实现返回上一页,只需删除widgets容器类中的最后一个指针将返回上一页 | |
void hideWidget(); | 用于析构widgets容器中的最后一个子页面窗口。其上一级窗口就会显示出来。 | ||
void clearWidget(); | 析构widgets容器中的所有子页面窗口,首页就会显示出来。 | ||
void setConsumerNumber(); | 根据当前时间和所选桌台号,生成本次消费的消费流水号 | ||
QString getConsumerNumber(); | 取得当前消费流水号 | ||
void connectDatabase(); | 连接数据库 | ||
void getServerIP(); | 从配置文件中读取服务器IP、端口信息 | ||
子窗口部件 | QPushButton | startOrderBtn | 开始点餐按钮 |
hadOrderBtn | 已点查询按钮 | ||
hotelInfoBtn | 酒店介绍按钮 | ||
handleGuideBtn | 操作指南按钮 | ||
systemLoginBtn | 系统设置按钮 | ||
homePageBtn | 首页 | ||
upPageBtn | 上一页 | ||
QLabel | logoLable | 用于显示企业LOGO | |
childWidgetLable | 用于其他子窗口的显示 | ||
QListWidget | rightListWidget | 用于显示当前时间,桌台或包房号,当前服务员ID以及消费总金额 | |
私有成员 | QVector<QWidget * const >widgets; | 用于存储每个正在显示的子页面的指针 | |
QTimer *refushTimer; | 定时间隔为5秒,超时后刷新Logo下方的信息。 | ||
StartOrderWidget *startOrder; | 开始点餐子页面指针 | ||
HadOrderWidget*hadOrder; | 已点查询子页面指针 | ||
HotelInfoWidget *hotelInfo; | 酒店介绍子页面指针 | ||
HandleGuideWidget *handleGuide; | 操作指南子页面指针 | ||
LoginWidget *systemLogin; | 系统登陆子页面指针 | ||
QString consumerNumber; | 用于保存当前消费流水号 |