Название: ошибки компиляции QtCreator Отправлено: yura91 от Май 06, 2016, 00:17 Вот код
Обьявление класса window #ifndef WINDOW_H #define WINDOW_H #include <QWidget> namespace Ui { class window; } class window : public QWidget { Q_OBJECT public: explicit window(QWidget *parent = 0); ~window(); private slots: void comboSelectItem(int); private: Ui::window *ui; }; #endif // WINDOW_H Реализация класса window #include "window.h" #include "ui_window.h" #include <QDebug> window::window(QWidget *parent) : QWidget(parent), ui(new Ui::window) { ui->setupUi(this); ui->categorycomboBox->addItem("Категории запроса"); ui->categorycomboBox->addItem("Все"); ui->categorycomboBox->addItem("Телефонные звонки"); ui->categorycomboBox->addItem("Контакты телефона"); ui->categorycomboBox->addItem("SMS"); ui->categorycomboBox->addItem("Электронная почта"); ui->categorycomboBox->addItem("Информация о местоположении"); ui->categorycomboBox->addItem("Телефонные разговоры"); ui->categorycomboBox->addItem("Разговоры"); ui->categorycomboBox->addItem("Переписка вконтакте"); connect(ui->categorycomboBox, SIGNAL(currentIndexChanged (int)), this, SLOT(comboSelectItem(int))); } void window::comboSelectItem(int b) { switch(b) { case 1: { qDebug() << "String " << b; ui->beginintervallineEdit_4->setEnabled(true); ui->standdatecheckBox_2->setEnabled(true); ui->enterdatelineEdit->setEnabled(true); ui->endintervallineEdit_3->setEnabled(true); ui->intervalspinBox->setEnabled(false); ui->recordphonecheck->setEnabled(false); ui->changecontactcheck->setEnabled(false);\ ui->recordspeak->setEnabled(false); ui->listcontactcheck->setEnabled(false); ui->smscheck->setEnabled(false); ui->changesmscheck->setEnabled(false); ui->locationcheck->setEnabled(true); ui->adresslineEdit->setEnabled(true); ui->recordspeak->setEnabled(false); ui->makephotocheck->setEnabled(false); ui->spinBox_2->setEnabled(false); break; } case 2: { qDebug() << "String " << b; ui->recordphonecheck->setEnabled(true); ui->changecontactcheck->setEnabled(true); ui->recordspeak->setEnabled(false); ui->listcontactcheck->setEnabled(false); ui->smscheck->setEnabled(false); ui->changesmscheck->setEnabled(false); break; } case 3: { qDebug() << "String " << b; ui->beginintervallineEdit_4->setEnabled(false); ui->standdatecheckBox_2->setEnabled(false); ui->enterdatelineEdit->setEnabled(false); ui->endintervallineEdit_3->setEnabled(false); ui->intervalspinBox->setEnabled(false); ui->recordphonecheck->setEnabled(false); ui->changecontactcheck->setEnabled(true);\ ui->recordspeak->setEnabled(false); ui->listcontactcheck->setEnabled(true); ui->smscheck->setEnabled(false); ui->changesmscheck->setEnabled(false); ui->locationcheck->setEnabled(false); ui->adresslineEdit->setEnabled(false); ui->recordspeak->setEnabled(false); ui->makephotocheck->setEnabled(false); ui->spinBox_2->setEnabled(false); break; } case 4: { qDebug() << "String " << b; ui->beginintervallineEdit_4->setEnabled(false); ui->standdatecheckBox_2->setEnabled(false); ui->enterdatelineEdit->setEnabled(false); ui->endintervallineEdit_3->setEnabled(false); ui->intervalspinBox->setEnabled(false); ui->recordphonecheck->setEnabled(false); ui->changecontactcheck->setEnabled(false);\ ui->recordspeak->setEnabled(false); ui->listcontactcheck->setEnabled(false); ui->smscheck->setEnabled(true); ui->changesmscheck->setEnabled(true); ui->locationcheck->setEnabled(false); ui->adresslineEdit->setEnabled(false); ui->recordspeak->setEnabled(false); ui->makephotocheck->setEnabled(false); ui->spinBox_2->setEnabled(false); break; } case 5: { qDebug() << "String " << b; ui->beginintervallineEdit_4->setEnabled(false); ui->standdatecheckBox_2->setEnabled(false); ui->enterdatelineEdit->setEnabled(false); ui->endintervallineEdit_3->setEnabled(false); ui->intervalspinBox->setEnabled(false); ui->recordphonecheck->setEnabled(false); ui->changecontactcheck->setEnabled(false);\ ui->recordspeak->setEnabled(false); ui->listcontactcheck->setEnabled(false); ui->smscheck->setEnabled(false); ui->changesmscheck->setEnabled(false); ui->locationcheck->setEnabled(false); ui->adresslineEdit->setEnabled(false); ui->recordspeak->setEnabled(false); ui->makephotocheck->setEnabled(false); ui->spinBox_2->setEnabled(false); break; } case 6: { qDebug() << "String " << b; ui->beginintervallineEdit_4->setEnabled(true); ui->standdatecheckBox_2->setEnabled(true); ui->enterdatelineEdit->setEnabled(true); ui->endintervallineEdit_3->setEnabled(true); ui->intervalspinBox->setEnabled(false); ui->recordphonecheck->setEnabled(false); ui->changecontactcheck->setEnabled(false);\ ui->recordspeak->setEnabled(false); ui->listcontactcheck->setEnabled(false); ui->smscheck->setEnabled(false); ui->changesmscheck->setEnabled(false); ui->locationcheck->setEnabled(true); ui->adresslineEdit->setEnabled(true); ui->recordspeak->setEnabled(false); ui->makephotocheck->setEnabled(true); ui->spinBox_2->setEnabled(true); break; } case 7: { qDebug() << "String " << b; ui->beginintervallineEdit_4->setEnabled(true); ui->standdatecheckBox_2->setEnabled(true); ui->enterdatelineEdit->setEnabled(true); ui->endintervallineEdit_3->setEnabled(true); ui->intervalspinBox->setEnabled(false); ui->recordphonecheck->setEnabled(true); ui->changecontactcheck->setEnabled(false);\ ui->recordspeak->setEnabled(false); ui->listcontactcheck->setEnabled(false); ui->smscheck->setEnabled(false); ui->changesmscheck->setEnabled(false); ui->locationcheck->setEnabled(true); ui->adresslineEdit->setEnabled(true); ui->recordspeak->setEnabled(false); ui->makephotocheck->setEnabled(false); ui->spinBox_2->setEnabled(false); break; } case 8: { qDebug() << "String " << b; ui->beginintervallineEdit_4->setEnabled(true); ui->standdatecheckBox_2->setEnabled(true); ui->enterdatelineEdit->setEnabled(true); ui->endintervallineEdit_3->setEnabled(true); ui->intervalspinBox->setEnabled(false); ui->recordphonecheck->setEnabled(false); ui->changecontactcheck->setEnabled(false);\ ui->recordspeak->setEnabled(true); ui->listcontactcheck->setEnabled(false); ui->smscheck->setEnabled(false); ui->changesmscheck->setEnabled(false); ui->locationcheck->setEnabled(true); ui->adresslineEdit->setEnabled(true); ui->recordspeak->setEnabled(true); ui->makephotocheck->setEnabled(false); ui->spinBox_2->setEnabled(false); break; } case 9: { qDebug() << "String " << b; break; } } } window::~window() { delete ui; } обьявление mainWindow #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); public slots: void on_click(); void on_click1(); private: Ui::MainWindow *ui; }; #endif // MAINWINDOW_H реализация MainWindow #include "mainwindow.h" #include "ui_mainwindow.h" #include "form.h" #include "window.h" #include <QLabel> MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->pushButton,SIGNAL(clicked()),this,SLOT(on_click())); connect(ui->pushButton_2,SIGNAL(clicked()),this,SLOT(on_click1())); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_click() { Form* f = new Form(); // тут все нормально f->show(); } void MainWindow::on_click1() { Ui::window* f = new window(); // здесь ошибка: expected type-specifier before 'window' пробовал просто window* f = new window(); //не помогло f->show(); } При создании обьекта window возникает ошибка компилляции, а при создании обьекта Form все нормально работает. Хотя и тот и другой относятся к классу QWidget и принадлежат пространству Ui. В чем может быть ошибка как исправить проблему? Название: Re: ошибки компиляции QtCreator Отправлено: Alex Custov от Май 06, 2016, 17:05 заменить
Код: Ui::window* f = new window(); Код: window* f = new window; Ui::window и window - это разные типы. Если не помогает, заттач сюда проект. |