如何在没有焦点的情况下更新QDataWidgetMapper项

时间:2016-11-10 16:07:45

标签: c++ qt

我有几个QLineEdits,每个都通过自己的QDataWidgetMapper连接到一个QStandardItemModel,因此它们都反映了相同的值。

如果用户在一个QLineEdit中输入一个值 - 当QLineEdit失去焦点,模型被更新并且所有其他QLineEdits显示相同的值时,这非常有效。

但是,我想通过QLineEdit :: setText在一个QLineEdit中设置值,这不会使QLineEdit失去焦点。我可以在QDataWidgetMapper上手动调用submit,但这需要设置对该mapper的访问权限,如果我可以帮助它,我宁愿避免使用它,因为它在另一个类中。

有没有办法在QLineEdit中设置文本,就像用户输入了文本一样,以便QDataWidgetMapper提交?

1 个答案:

答案 0 :(得分:3)

这比我想象的要容易。当我设置映射器时,我可以将QLineEdit的textChanged信号连接到映射器的提交槽。