【发布时间】:2021-03-11 21:43:49
【问题描述】:
我可以将此代码用于分配孩子。
QObjectList boxes = this->children();
但我无法使用此代码。
QObjectList boxes = ui->checkBox_2->parent();
我如何获得父母?
【问题讨论】:
标签: c++ qt oop inheritance
我可以将此代码用于分配孩子。
QObjectList boxes = this->children();
但我无法使用此代码。
QObjectList boxes = ui->checkBox_2->parent();
我如何获得父母?
【问题讨论】:
标签: c++ qt oop inheritance
没有获取父母的默认方法,因此您必须使用parent() 方法进行迭代:
QObjectList parents(QObject *qobject){
if(!qobject)
return {};
QObjectList parents;
const QObject *o = qobject;
while (QObject *q = o->parent()) {
parents.push_back(q);
o = q;
}
return parents;
}
QObjectList boxes = parents(ui->checkBox_2);
【讨论】: