Russian Qt Forum
Ноябрь 23, 2024, 06:16 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: ошибки компиляции QtCreator  (Прочитано 1849 раз)
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. В чем может быть ошибка как исправить проблему?
« Последнее редактирование: Май 06, 2016, 00:20 от yura91 » Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #1 : Май 06, 2016, 17:05 »

заменить
Код:
Ui::window* f = new window();
на
Код:
window* f = new window;

Ui::window и window - это разные типы. Если не помогает, заттач сюда проект.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.134 секунд. Запросов: 22.