Je n'ai pas compris l'origine de cette erreur :
../../Qt/4.5.0/include/QtGui/../../src/gui/kernel/qwidget.h `QWidget& QWidget::operator=(const QWidget&)' is private
Version imprimable
Je n'ai pas compris l'origine de cette erreur :
../../Qt/4.5.0/include/QtGui/../../src/gui/kernel/qwidget.h `QWidget& QWidget::operator=(const QWidget&)' is private
A mon avis tu essais de faire une affection avec l'un des deux objets qui n'est pas de type QWidget.
Je fais une affectation d'un widget vers un autre.Mais le même problème persiste.Voici mon code:
MainArea.h
MainArea.ccpCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #ifndef MAINAREA_H_ #define MAINAREA_H_ #include <QLayout> #include <QObject> class MainArea : public QWidget { Q_OBJECT public: MainArea(QWidget *parent = 0); void openModule(QWidget &widgetModule); protected: private: QWidget affichewidgetModule; }; #endif /* MAINAREA_H_ */
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #include "Interfaces.h" #include "MainArea.h" #include "ConsoleAdministration.h" #include "ui_ConsoleAdministration.h" #include <QWidget> MainArea::MainArea(QWidget *parent) : QWidget(parent) { ConsoleAdministration ca; setLayout(ca.ui.horizontalLayout_3); setAttribute(Qt::WA_StaticContents); setAttribute(Qt::WA_NoBackground); } void MainArea::openModule(QWidget &widgetModule) { affichewidgetModule = widgetModule; #ifndef QT_NO_CURSOR setCursor(Qt::CrossCursor); #endif }
Salut,
Les classes dérivant de QObject ne se copient pas; cela n'a pas de sens si tu penses à la hiérarchie créée, aux connexions de signal/slot ou encore à l'appartenance à tel thread.