在Qt中的单个小部件中添加复选框列表

Don*_*alo 6 c++ qt

我正在使用Qt Creator 2.0.1(Qt 4.7).我需要一个可以垂直容纳多个复选框的小部件.用户与其他UI元素交互时,复选框将动态添加到窗口小部件.小部件将具有固定的宽度和高度,因此如果复选框太多,则应显示垂直滚动条.

我想要的是,想象一下QListWidget,其中列表项可以是复选框.

哪个小部件可以让我这样做?

谢谢.

Isi*_*ira 12

对区域使用QListWidget.

QStringList  itemLabels= getLabels();

QStringListIterator it(itemLabels);
while (it.hasNext())
{
      QListWidgetItem *listItem = new QListWidgetItem(it.next(),listWidget);
      listItem->setCheckState(Qt::Unchecked);
      ui->listWidget->addItem(listItem);
}
Run Code Online (Sandbox Code Playgroud)

这将自动使所有元素可检查,当列表增加时,它将启用滚动.


Luc*_*lle 11

那么你确实可以使用QListWidget带有可检查项目(请参阅void QListWidgetItem::setFlags或使用QScrollArea包含QWidget你动态添加的地方QCheckBoxes.选择取决于你!