这篇文章加上显示分数功能
由于要腾出一块地方显示分数,如图:
所以又定义了连个变量gameWidth 和 gameHeight表示游戏部分的宽和高,而不再是整个窗体都用来显示游戏界面
mainwindow.h
省略了一些代码,和本章内容无关的代码
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
void paintEvent(QPaintEvent *event);
void keyPressEvent(QKeyEvent *event);
public:
void createFood();
bool hasEatFood(); //是否吃到食物
public:
int gameWidth; //贪吃蛇游戏界面的宽度和高度
int gameHeight;
int score=0;
};
#endif // MAINWINDOW_H
mainwindow.cpp
其构造函数如下所示,所以我们要把之前的this->width()和this->height()都要改成gameWidth,gameHeight。
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainW