【发布时间】:2019-08-24 19:39:26
【问题描述】:
在我的 C++ 程序中,我希望能够在运行时加载一个文件,其中包含多个员工的数据(名字、姓氏、出生日期)。该文件应该被解释并为每个员工创建 Employee 对象,并存储在某种列表中(可能是 QList?)。
在 QML 方面,我有一个“employee.qml”文件,它本质上是一个包含一些文本字段的矩形。
创建 Employee 对象后,我还想创建 'employee.qml' 组件的实例,并将每个实例绑定到其各自的 Employee 对象,以便文本字段反映 C++ 对象中的数据。
实际上,对于每个 Employee 对象,应该在屏幕上放置一个新组件,并绑定到正确的对象。它还应该能够调用类中定义的公共槽方法。
Qt 和 QML 是否也能做到这一点?
编辑:
一种可能的想法是在 C++ 中使用 QQmlComponent::create(),使用 SetProperty() 将 id 设置为 C++ 对象的名称,然后使用 setContextProperty 使该对象可用于 QML。
【问题讨论】:
标签: c++ qt user-interface qml