@FaulerAffe
-

Почему я не могу добавить свой Widget в Layout (Qt)?

Я написал такой простой Widget:
class but_indicate : public QWidget
{
    Q_OBJECT
public:
    explicit but_indicate(QWidget *parent = nullptr);

private:
    QLabel *lb1, *lb2;

public slots:
    void buttonPressed();
    void buttonReleased();
};


Вот его конструктор:
but_indicate::but_indicate(QWidget *parent) : QWidget(parent)
{
    QHBoxLayout* tbLO = new QHBoxLayout;
    lb1 = new QLabel("Simple button is not pressed.");
    lb1->setFrameStyle(QFrame::Box);
    lb1->setLineWidth(1);
    lb2 = new QLabel("Toggle button is not pressed.");
    lb2->setFrameStyle(QFrame::Box);
    lb2->setLineWidth(1);
    tbLO->addWidget(lb1);
    tbLO->addWidget(lb2);
    setLayout(tbLO);
}


Могу ли я его вообще добавить в QVBoxLayout? Если я использую свой Widget отдельно, то он прекрасно работает:
but_indicate* b = new but_indicate;
    b->show();

Если я хочу добавить его в QVBoxLayout, то мне выдают ошибку "'but_indicate' does not refer to a value":
QVBoxLayout* mainLO = new QVBoxLayout;
    mainLO->addWidget(but_indicate); //вот тут ошибка

В чём может быть ошибка?
  • Вопрос задан
  • 67 просмотров
Решения вопроса 1
@FaulerAffe Автор вопроса
-
Случайно написал название класса вместо названия переменной в последней строке, проблем в реализации класса не было.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы