无法在QT中动态添加复选框

时间:2014-07-30 13:27:01

标签: 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 个答案:

答案 0 :(得分:3)

复选框没有名称(关联文本),因为您没有设置它们。您可以在构造时设置它,例如:

QCheckBox *dynamic = new QCheckBox("This is a check box");

您使用的setObjectName()函数是QObject(基类)函数,它设置的对象名称具有不同的含义。