سلام دوستان .
من یه برنامه ی ساده نوشتم که اگه روی کلید کلیک کنیم برخورد لوزی و مستطیل رو اعلام میکنه ... ولی نمیدونم مشکل در connect هست یا جای دیگه ای ؟!
و در ضمن یه ایکون هم بهش اضافه میکنم ولی نمیاره ! error اش رو هم گذاشت م ...
کلافه ام کرده این connect و slot و signal !!!

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QGraphicsView>
#include <QGraphicsScene>
#include <QGraphicsRectItem>
#include <QPushButton>
#include <QPixmap>
#include <QMessageBox>
#include <QGraphicsEllipseItem>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QGraphicsView * view = new QGraphicsView;
QGraphicsScene *scene = new QGraphicsScene;
QGraphicsEllipseItem *el = new QGraphicsEllipseItem;
setCentralWidget(view);
view->setScene(scene);
// view.setScene(scene);
QPushButton *btn = new QPushButton(view);
connect(btn,SIGNAL(clicked()),
this , SLOT(btnclick()));
view->setRenderHint(QPainter::Antialiasing);
scene->addPixmap(QPixmap("C:\Users\Novin Pendar\Desktop\icon"));
QGraphicsRectItem *rec = scene->addRect(10,10,100,100);
rec->setPos(200,200);
rec->setFlag(QGraphicsItem::ItemIsMovable , true);
rec->setFlag(QGraphicsItem::ItemIsSelectable);
rec->setFlag(QGraphicsItem::ItemClipsChildrenToShape );
//rec->setFlag(QGraphicsItem::ItemClipsToShape,true);
scene->setSceneRect(0,0,500,500);
el = scene->addEllipse(100,100,20,10);
}

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

void MainWindow::btnclick()
{
if( rec->collidesWithItem(el))
{
QMessageBox::information(this,"collodes","warning !");
}
}


#include <QGraphicsView>
#include <QGraphicsScene>
#include <QGraphicsRectItem>
#include <QPushButton>
#include <QGraphicsEllipseItem>
#include <QMainWindow>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
Q_OBJECT

public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();

private:
Ui::MainWindow *ui;
QGraphicsEllipseItem *el;
QGraphicsRectItem *rec ;
private slots :
void btnclick();
};