我可以以某种方式一次将一个QTreeWidgetItem附加到两个(或多个)节点上吗?像这样:

parent1
 └child1
parent2
 └child1

如果我只对两个 parent 都执行addChild(),则该 child 只会出现在第一位 parent 上。那有可能吗?还是仅通过完全复制后代才能获得这样的结果?

最佳答案

instructions说:



这意味着唯一的选择是完全复制子代。大致如此:

QTreeWidgetItem* copy(QTreeWidgetItem* item)
{
    if (item == nullptr)
    {
        return nullptr;
    }

    QTreeWidgetItem* out = new QTreeWidgetItem(*item);
    for (int i = 0; i < item->childCount(); i++)
    {
        out->addChild(copy(item->child(i)));
    }

    return out;
}

关于c++ - 有两个 parent 的QTreeWidgetItem,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55566993/

10-09 19:16