QT实现打地鼠

进入游戏封面,通过connect函数跳转到游戏界面

#include "mouse.h"
#include "ui_mouse.h"

mouse::mouse(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::mouse)
{
    ui->setupUi(this);
    form = new Hitmouse;
    connect(form,SIGNAL(backForm()),this,SLOT(backshow()));
    form->hide();
}

mouse::~mouse()
{
    delete ui;
}

void mouse::on_pushButton_clicked()
{
    this->hide();
    form->show();

}
void mouse::backshow()
{
    this->show();
}




到游戏界面后,通过信号与槽连接,将地鼠(button)按钮和所得分数(UpdateScore())槽函数相连接,点击地鼠后,分数增加10分。

#include "hitmouse.h"
#include "ui_hitmouse.h"

Hitmouse::Hitmouse(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Hitmouse)
{
    ui->setupUi(this);
    ui->pat->hide();
    ui->pause1->hide();
    ui->pback->hide();
    ui->pquit->hide();

    ui->label_3->hide();
    ui->lcdNumber_2->hide();
    ui->rreturn->hide();
    ui->rback->hide();

    this->score = 0;

    connect(ui->m00,SIGNAL(clicked(bool)),this,SLOT(UpdateScore()));
    connect(ui->m01,SIGNAL(clicked(bool)),this,SLOT(UpdateScore()));
    connect(ui->m02,SIGNAL(clicked(bool)),this,SLOT(UpdateScore()));

点击出现的地鼠(button),地鼠消失,另一只地鼠出现,地鼠位置改变

void Hitmouse::on_m10_clicked()
{
    ui->m10->hide();
    ui->m21->show();


}

void Hitmouse::on_m21_clicked()
{

    ui->m21->hide();
    ui->m00->show();


}

点击最后一只地鼠,计算所得分数,并显示胜利界面和相应得分

void Hitmouse::on_m02_clicked()
{
    ui->label_3->show();
    ui->lcdNumber_2->show();
    this->ui->lcdNumber_2->display(this->score);
    ui->rback->show();
    ui->rreturn->show();
}


添加Resources文件,将所需要的封面图片,地鼠图片,打地鼠界面和胜利界面放入