Bonjour

je crée un button et j'essaye de lui faire son connect correspondant
je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
	QPushButton * p = new QPushButton(parent);
	 QObject::connect(p, SIGNAL(clicked()), this, SLOT(click_pick()));
il me sort l'erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
error C2665: 'QObject::connect'*: aucune des 2 surcharges n'a pu convertir tous les types d'arguments
1>        g:\dev_coin\qt-win-opensource-src-4.5.3\src\corelib\kernel\qobject.h(191): peut être 'bool QObject::connect(const QObject *,const char *,const QObject *,const char *,Qt::ConnectionType)'
1>        g:\dev_coin\qt-win-opensource-src-4.5.3\src\corelib\kernel\qobject.h(203): ou       'bool QObject::connect(const QObject *,const char *,const char *,Qt::ConnectionType) const'
1>        lors de la tentative de mise en correspondance de la liste des arguments '(QPushButton *, const char *, MyExaminerViewer *const , const char *)'
pr le code entier de ma classe :le .cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
#include "MyExaminerViewer.h"
#include <qpushbutton.h>
#include <stdlib.h>
MyExaminerViewer::MyExaminerViewer(QWidget * parent)
    : SoQtExaminerViewer(parent, NULL, TRUE,
                            SoQtFullViewer::BUILD_ALL, SoQtFullViewer::BROWSER,
                            // build == FALSE, to delay creation of decorations
                            FALSE)
  {
    // Explicitly trigger the construction of viewer decorations.
    QWidget * widget = this->buildWidget(this->getParentWidget());
    this->setBaseWidget(widget);
  }
 
  void
  MyExaminerViewer::createViewerButtons(QWidget * parent, SbPList * buttonlist)
  {
    SoQtExaminerViewer::createViewerButtons(parent, buttonlist);
    // [now add your own button(s) to the buttonlist]
	QPushButton * p = new QPushButton(parent);
	 QObject::connect(p, SIGNAL(clicked()), this, SLOT(click_pick()));
   //   p->setPixmap(QPixmap((const char **)home_xpm));
 
 
    p->adjustSize();
    buttonlist->append(p);
 
  }
le.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
 
#include "inventor.h"
#include <QObject>
#include <QMouseEvent>
class MyExaminerViewer : public SoQtExaminerViewer {
 
  public:
    MyExaminerViewer(QWidget * parent);
 
  protected:
    virtual void createViewerButtons(QWidget * parent, SbPList * buttonlist);
 
  };