我开始在Qt编程的第一步,但找不到答案。 我有一些小部件,让我们说它被命名为“tab”。 我想添加它的布局新小部件。 我可以写下:
QLabel *label = new QLabel(tab);
我想做同样的事情,但不是说“tab”我想使用存储在QString变量中的widget名称。像这样的东西(但它不起作用,不能将QString转换为QWidget):
QString name = "tab";
QLabel *label = new label(zakladka);
有可能吗?
答案 0 :(得分:3)
QObjects具有属性objectName
。因此,如果您命名对象并让它们成为QObject层次结构的一部分(即您知道它们是父对象的子级),则可以使用findChild
QLabel* label = new QLabel(parentWidget->findChild(name));