не отображаются или не создаются объекты созданные мною в классе
Суть заключается в том что у меня есть класс Map в котором я создаю label с изображением, но когда я пытаюсь создать его в заголовочном файле MainWindow он их не отображает хотя конструктор класса Map запускается
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private:
Ui::MainWindow *ui;
void paintEvent(QPaintEvent *event) override;
void mousePressEvent(QMouseEvent *event) override;
Map map;
signals:
void windowChanged(int width, int height);
};
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow), map(this)
{
ui->setupUi(this);
this->resize(1000,800);
this->setWindowTitle("Quoridor");
this->setWindowIcon(QIcon(":/img/C:/Users/Артем/Desktop/Quoridor/dice.ico"));
this->setStyleSheet("background: rgb(209, 209, 209);");
//Map map1(this);
}
Но если я создаю экземпляр класса в самом конструкторе (см закомментированный код), то все работает как надо
Ответы (1 шт):
Автор решения: Illya boyko
→ Ссылка
Тогда в конструкторе напиши map.setParent(this), если хочешь оставить его объявление в заголовочном файле.