用qt的图形视图框架实现的五子棋.
效果如图:
/*MainWindow.h*/
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtWidgets/QMainWindow>
#include "ui_mainwindow.h"
#include <QGraphicsScene>
#include <QGraphicsView>
#include <QGraphicsItem>
#include <QMouseEvent>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
void mousePressEvent(QMouseEvent *);//鼠标按下事件
void drawCrossLine();//画棋盘
void Win();//判断输赢
int situation1();
int situation2();
int situation3();
int situation4();
private:
QGraphicsScene *scene;
QGraphicsView *view;
QGraphicsItem *item;
int palyer;
int a[15][15];
};
#endif // MAINWINDOW_H
</pre><pre name="code" class="cpp">/*main.cpp*/
#include "mainwindow.h"
#include <QtWidgets/QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
</pre>/*MainWindow.cpp*/<pre>
<