1

我在 Qt 中开始了我的第一步编程,但找不到答案。我有一些小部件,假设它被命名为“标签”。我想在它的布局中添加新的小部件。我可以通过写来做到这一点:

QLabel *label = new QLabel(tab);

我想做同样的事情,但我不想说“tab”,而是想使用存储在 QString 变量中的小部件名称。像这样的东西(但它不起作用,不能将 QString 转换为 QWidget):

QString name = "tab";
QLabel *label = new label(zakladka);

可能吗?

4

1 回答 1

3

QObjects 有一个属性objectName。因此,如果您命名您的对象并让它们成为 QObject 层次结构的一部分(即您知道它们是父对象的子对象),您可以使用findChild

QLabel* label = new QLabel(parentWidget->findChild(name));
于 2012-05-24T17:42:05.263 回答