Проблема с добавлением флажков динамически в QT
Мое требование: динамически создавать флажки на основе строк no.of в загруженном текстовом файле.
Ниже мой код:
QVBoxLayout *lay = new QVBoxLayout(this);
for(i=0;i<number_of_commands;i++)
{
QCheckBox *dynamic = new QCheckBox(names[i]);
dynamic->setChecked (true);
lay->addWidget(dynamic);
}
ui->scrollAreaWidgetContents_2->setLayout(lay);
Я вижу правильное количество флажков, но только первое поле названо с фамилией (т.е. box1
назван с именами [20], а все остальные поля пусты)
1 ответ
Решение
Флажки не имеют имен (связанных текстов), потому что вы их не устанавливаете. Вы можете установить его на строительство, например:
QCheckBox *dynamic = new QCheckBox("This is a check box");
setObjectName()
функция, которую вы используете QObject
(базовый класс) и устанавливает скорее имя объекта, которое имеет другое значение.