Problème avec QObject::connect()
	
	
		Bonjour, 
Je tente d'écrire un pavé numérique en c++/QML. Je sèche sur l'erreur suivante :
	Code:
	
1 2 3 4
   | ..\paveNum\main.cpp: In function 'int qMain(int, char**)':
..\paveNum\main.cpp:17: error: no matching function for call to 'QObject::connect(QGraphicsObject**, const char*, MyClass**, const char*)'
c:\QtSDK\Simulator\Qt\mingw\include/QtCore/qobject.h:198: note: candidates are: static bool QObject::connect(const QObject*, const char*, const QObject*, const char*, Qt::ConnectionType)
c:\QtSDK\Simulator\Qt\mingw\include/QtCore/qobject.h:313: note:                 bool QObject::connect(const QObject*, const char*, const char*, Qt::ConnectionType) const  | 
 Quelqu'un aurait-il une idée d'où elle pourrait provenir ?!
Voici les différents fichiers:
.h
	Code:
	
1 2 3 4 5 6 7 8 9 10 11 12
   | #include <QObject>
#ifndef MYCLASS_H
#define MYCLASS_H
 
class MyClass : QObject {
    Q_OBJECT
public:
    MyClass();
public slots:
    void cppSlot(QString msg);
};
#endif // MYCLASS_H | 
 .cpp
	Code:
	
1 2 3 4 5 6 7 8
   | #include <MyClass.h>
#include <QDebug>
 
MyClass::MyClass(){}
 
void MyClass::cppSlot(QString msg){
    qDebug()<<"Resultat : "<<msg;
} | 
 main.cpp
	Code:
	
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
   | #include <QtGui/QApplication>
#include "qmlapplicationviewer.h"
#include <QObject>
#include <QDeclarativeView>
#include <MyClass.h>
 
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
 
    QDeclarativeView view;
    view.setSource(QUrl::fromLocalFile("qml/paveNum/main.qml"));
 
    MyClass *myClass = new MyClass;
    QGraphicsObject *item = view.rootObject();
 
    QObject::connect(&item, SIGNAL(qmlResult(QString)),&myClass, SLOT(cppSlot(QString)));
 
    view.show();
    return app.exec();
} | 
 touche.qml
	Code:
	
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
   | import QtQuick 1.0
 
Item {
    id: container
    property alias toucheTxt: label.text
    signal clicked
    width: 70
    height: 70
 
    Rectangle {
        id: rectangle
        color: "white"
        border.color: "grey"
        border.width: 1
        radius: 5
        anchors.fill: parent
    }
    Text {
        id: label
        anchors.centerIn: parent
    }   
    MouseArea {
        id: mousearea
        anchors.fill: parent
        onClicked: container.clicked()
    }
    states:[State {
        when: mousearea.pressed
        PropertyChanges { target:rectangle; color: "lightblue"}
        }
    ]
} | 
 main.qml
	Code:
	
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
   | import QtQuick 1.0
 
Rectangle {
    id: pave_num
    width: grid.width+10
    height: grid.height+80
    color: "lightgrey"
 
    signal qmlResult(string res)
 
    Grid {
        id: grid
        spacing: 5
        columns: 3
        anchors.centerIn: parent
 
        Repeater {
            model: 9
            Touche {
                toucheTxt: 9-index
                onClicked: aff.setText(toucheTxt)
            }
        }
        Touche {
            toucheTxt: "0"
            onClicked: aff.setText(toucheTxt)
        }
        Touche {
            toucheTxt: "C"
            onClicked: aff.clear()
        }
        Touche {
            toucheTxt:"Ok"
            onClicked: aff.valid()
        }
    }
 
    Rectangle{
      border.color : "grey"
      anchors.top : parent.top
      anchors.topMargin : 5
      anchors.horizontalCenter: parent.horizontalCenter
      id : recF
      width : grid.width
      color : "#FFF";
      height : 30
      radius : 2
      //opacity : 0.7;
      TextInput{
         id : aff
         anchors.left :parent.left
         anchors.leftMargin : 5
         anchors.top : parent.top
         anchors.topMargin : 5
         width : parent.width - 10
         font.pointSize: 13
 
         function setText(texte){
             aff.text += texte
         }
         function getText(){
             return aff.text
         }
         function clear(){
             console.log("clear")
             aff.text = ""
         }
         function valid(){
             console.log(aff.getText())
             qmlResult(aff.getText())
         }
      }
    }
 
    Text {
        text: "Test pavé numérique"
        font.italic: true
        anchors.bottom: parent.bottom
        anchors.bottomMargin: 5
        anchors.left: parent.left
        anchors.leftMargin: 5
        font.pixelSize: 12
    }
 
} |