Как выбрать все Item в QTreeWidget у которых статус Qt::Checked.
Я формирую QTreeWidget следующим образом :
void VisualInspectionData::TreeWidgetListFiles(QStringList imagePathListCopy, QString DeviceFolder, QString DeviceId) {
if (DeviceFolder.isEmpty()) { DeviceFolder = "устройство не определено"; }
FilesTreeWidget->setColumnCount(1);
QTreeWidgetItem * item;
QList<QTreeWidgetItem *> items;
for (int i = 0; i < imagePathListCopy.size(); ++i) {
item = new QTreeWidgetItem;
item->setText(0,QFileInfo(imagePathListCopy.at(i)).fileName());
item->setStatusTip(0,imagePathListCopy.at(i));
item->setCheckState(0, Qt::Unchecked);
item->setIcon(0,QIcon(imagePathListCopy.at(i)));
items.append(item);
}
FilesTreeWidget->insertTopLevelItems(0, items);
connect(FilesTreeWidget,SIGNAL(itemClicked(QTreeWidgetItem*,int)),this,SLOT(TreeWidgetItemClick(QTreeWidgetItem*,int)));
}
Делаем обход элементов первого столбца дерева и собираем в список, те, у кого стоит флажок:
QList<QTreeWidgetItem *> childs;
for (int i = 0; i < TreeWidget->topLevelItemCount(); i++) {
QTreeWidgetItem * item = TreeWidget->topLevelItem(i);
if (item->checkState(0) == Qt::Checked) {
childs.append(item);
}
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости