QDataWidgetMapper 不适用于 QLabels

QDataWidgetMapper not working with QLabels

我正在使用 QDataWidgetMapper 将数据映射到 QLineEdit,它工作正常。当我用来将数据映射到 QLabel 时,它不会在 label.I 中显示任何数据,我正在尝试通过以下方式进行:

QDataWidgetMapper *testMapper=new QDataWidgetMapper();

testMapper->setOrientation(Qt::Vertical);
testMapper->setModel(testModel);


//setting the mapper values to the textboxes ----works fine
testMapper->addMapping(ui->LineEdit1,0);
testMapper->addMapping(ui->LineEdit2,1);

//setting it to qlabels
testMapper->addMapping(ui->label,3);----- does not work
testMapper->toFirst();

我从列表中获取值并将列表附加到 QDataWidgetMapper,从映射器我使用 addMapping 将其附加到文本框。谁能告诉我为什么它不适用于 qLabels。

默认情况下,每个小部件的 user property 用于在模型和小部件之间传输数据。 QLabel 没有用户 属性。您应该使用额外的 addMapping() 函数来启用命名的 属性 而不是默认用户 属性.

testMapper->addMapping(ui->label,3,"text");