Qt | Работа с layout'ами

401
23 декабря 2016, 14:22

Есть QTabWidget. В его вкладку нужно добавить виджет, например QLabel. Вкладка представляет собой просто виджет, внутри которого лежит QHBoxLayout, а внути него Scroll Bar и Spacer.

QWidget* tab = ui->tabs->widget(0);
    QLabel* lbl = new QLabel(tab);
    QFont font;
    font.setPixelSize(24);
    lbl->setFont(font);
    lbl->setText("Some Text");
    tab->layout()->addWidget(lbl);

По идее, последняя строка tab->layout()->addWidget(lbl); как раз добавляет в layout на вкладке тот самый QLabel слева, но он вставляет текст вне layout'a снизу (т.к. стоит вертикальная компоновка.

Объясните пожалуйста в чем проблема и как ее исправить.

Answer 1

Проблема была в формах, составленных в QtDesigner. Перепесил формы руками и все стало нормально работать.

READ ALSO
Вопрос о итераторах [требует правки]

Вопрос о итераторах [требует правки]

В каких случаях программа при отладке выдаёт ошибку: vector iterator not dereferencable и как ее, примерно, можно исправить?

314
QScrollArea и Layout

QScrollArea и Layout

Есть QScrollAreaВ нее нужно засунуть n-ое количество виджетов так, чтобы все скролилось при нужде

380
C++ как удалить границу окна в CFormView [требует правки]

C++ как удалить границу окна в CFormView [требует правки]

Имеется такая вот граница,обводка !

337
Упорядочение памяти (memory ordering) в QAtomicInteger

Упорядочение памяти (memory ordering) в QAtomicInteger

Имеется класс очереди запросов RequestQueue:

412