要扩展给定的节点以下的所有节点,我将以下列方式(C++)递归地执行:
void expandChildren(const QModelIndex &index, QTreeView *view)
{
if (!index.isValid()) {
return;
}
int childCount = index.model()->rowCount(index);
for (int i = 0; i < childCount; i++) {
const QModelIndex &child = index.child(i, 0);
// Recursively call the function for each child node.
expandChildren(child, view);
}
if (!view->expanded(index)) {
view->expand(index);
}
}
Run Code Online (Sandbox Code Playgroud)