Получить QWidget из QVBoxLayout

190
21 марта 2018, 05:37

Всем привет! Такой вопрос, как мне достать определенный виджет из лойаута.

Например у меня есть такая конструкция:

QHBoxLayout * pLayout = new QHBoxLayout(parent);
QRadioButton * item = new QRadioButton(parent);
QPushButton * button = new QPushButton(parent);
pLayout->addWidget(item);
pLayout->addWidget(button);
layout->addLayout(pLayout);

И мне нужно достать из этой конструкции радиобаттон, например так:

for (size_t i = 0, sz = N; i < sz; ++i)
{
    QWidget * selectorWidget = layout->itemAt((int)i)->widget();
}
QRadioButton* item  = qobject_cast<QRadioButton*>(selectorWidget);
Answer 1
  1. Добавьте в QVBoxLayout QHBoxLyaout, а уже в него что нужно.
  2. Возьмите указатель на QPushButton который вы разместили в QGridLayout и выставите ему свойство (btn->setEnabled(false) вроде)
READ ALSO
Как открыть диалог QML в UI форме?

Как открыть диалог QML в UI форме?

Нашёл popup календарь реализованный с помощью QMLХочу его встроить в свою программу, но у меня основное окно программы ui форма

219
Алгоритм с помощью &lt;algorithm&gt;

Алгоритм с помощью <algorithm>

Я реализовал алгоритм по получению нового массива из старогоИ мне хотелось бы получить такой же результат но используя функционал библиотеки...

168
Как работает ссылка?

Как работает ссылка?

Друзья, помогите джуну в C++! Когда пишем

209