Здравствуйте! У меня проблема, которую я решить не могу весь день.
Сразу извиняюсь за убогий код, оно станет лучше.
Итак к делу, имеется класс UserInterface, используемый для работы с интерфейсом. Сам интерфейс сделан в Qt Designer и сгенерирован с помощью uic утилиты.
В qt designer был сделан promote для виджета.
вот заголовочный файл виджета :
//mainwidget.h
#include <QtWidgets>
#include <QtCore>
#include <QtGui>
#include <iostream>
#include "UserInterface.h"
class MainWidget : public QWidget {
Q_OBJECT;
public:
MainWidget(QWidget *parent = 0);
};
Пока что он такой же, как и обычный QWidget.
Собственно в этот файл добавлен заголовочный файл "UserInterface.h"
Вот код этого хедера :
// UserInterface.h
#include <QtCore>
#include <QtWidgets>
#include <QtGui/QtGui>
#include <vector>
#include "gui.h"
#include <unistd.h>
#include "mainwidget.h"
using namespace std;
class UserInterface {
QMainWindow *mainWindow;
public:
UserInterface(vector<string> list);
void start();
void updateList(vector<string> list);
void flushFileList();
vector<string> list;
Ui_MainWindow *gui;
};
в него непосредственно инклудится "gui.h", который сгенерирован uic.
Так вот. когда в mainwidget.h подключен заголовочный файл UserInterface.h, ничего не работает. Конкретно в ИДЕ красным подсвечивается строка
Ui_MainWindow *gui;
Я пытался искать по stackoverflow подобное, и, в общем то, находил, но не смог приделать к моей ситуации.
Скорее всего описал сумбурно, спрашивайте ответы в комментарии, спасибо.