Salve a tutti sono nuovo da queste parti, non so se sono nella sezione giusta ma provo lo stesso:
Sto realizzando una miniInterfaccina utilizzando le librerie Qt e ho riscontrato un problema tentando di aggiungere una pagina (che e' in realta' un istanza di una classe) ad un oggetto QTabWidget.
Ho in totale tre classi (una di queste e' il main), posto solo il codice che ritengo necessario alla comprensione (almeno spero) del problema:
mainwindow.h
mainwindow.cppcodice:#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QtGui/QMainWindow> class QLabel; class QLineEdit; class QTextEdit; class QAction; class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(); private: QMenu *fileMenu; };
ricerca.hcodice:#include "mainwindow.h" #include "ricerca.h" #include "ui_mainwindow.h" #include <QtGui> #include <QAction> MainWindow::MainWindow() { this->setFixedSize(700,500); fileMenu = menuBar()->addMenu(tr("&File")); //////////////////BOX SINISTRA/////////////////////////// QGroupBox *panSx = new QGroupBox(this); panSx->setGeometry(10,60,200,420); panSx->setTitle(tr("Ricerca Dati")); QTabWidget *tabRic = new QTabWidget(panSx); Ricerca search; tabRic->addTab(search,"Ricerca Impiegato");
ricerca.cppcodice:#ifndef RICERCA_H #define RICERCA_H #include <QWidget> class QLabel; class QLineEdit; class QTextEdit; class Ricerca : public QWidget { Q_OBJECT public: Ricerca(); private: QLabel *nome; QLineEdit *name; };
main.cppcodice:#include <QtGui> #include "ricerca.h" Ricerca::Ricerca() { ////////////////LABEL//////////////////// nome = new QLabel(tr("Nome:")); ////////////////TEXT EDIT//////////////// name = new QLineEdit; QGridLayout *layout = new QGridLayout; layout->addWidget(nome,0,0); layout->addWidget(name,0,1); setLayout(layout); }
Se compilo ottengo un errore di "no matching function for call to'QTabWidget::addTab(Ricerca&, const char[])'"codice:#include <QtGui/QApplication> #include "mainwindow.h" #include "ricerca.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); }
Cosa significa? Dove Sbaglio?
Grazie

Rispondi quotando
