@PashaKrizskiy

Как добавить полосу прокрутки к layout-у, в который добавляются LineEdit-ы в QT?

Здравствуйте! Возникла вроде бы простая задачка, но реализовать не получается.
На скриншоте показан пример части интерфейса, который я сделал
03fa12ece137451db0fc85304dc1d54c.PNG
Суть в том, что при нажатии на "add powers" в layout-e, который расположен ниже, должны создаваться N LineEdit-ов для ввода числовых значений. Я это реализовал в цикле, основная логика которого приведена ниже:
ui->scrollArea->setLayout(ui->verticalLayout);
int height = INITIAL_VALUE;
for (int i = 0; i < count; i++) {
    ui->verticalLayout->addWidget(new QLineEdit());
    height += 50;
    ui->scrollArea->setGeometry(15, 290, 160, height);
}


Как видно, Layout я поместил внутрь scrollArea в надежде на полосы прокрутки, однако они не добавляются. Поэтому сделал кривую реализацию в виде изменения размеров scrollArea, однако она работает до тех пор, пока количество требуемых LineEdito-в не достигает большого значения.
В общем, я бы хотел создать Layout фиксированного размера и в него добавлять LineEdits, и в случае, когда LineEdits не вмещаются в Layout, появлялись бы полосы прокрутки.
Буду благодарен за подсказки, как такое реализовать.
  • Вопрос задан
  • 1984 просмотра
Пригласить эксперта
Ответы на вопрос 1
@LancerX0
В данном случае в scrollArea следует изменить вид компоновки на вертикальный:
Открыть форму -> ПКМ по scrollArea в дереве объектов -> Компоновка (последняя строка) -> Скомпоновать по вертикали.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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