通常情况下,我们需要动态修改QML中的组件的属性
在Android中,我们通过(Class)findById(Int id)来从context中选择组件,在bb中我们使用类似的方法
首先向qml中添加一个Label组件,注意组件的ObjectName为MyLabel
"Miscellaneous"//在此面板中设置
Label {
id: title
text: "1231231231"
objectName: "MyLabel"
}
在代码中我们使用以下的方式来查找这个Label
QObject *mylabel = root->findChild<QObject*>("MyLabel");
if (mylabel)
mylabel->setProperty("text", "New label text");
当需要获取ListView时
首先需要引入ListView,否则将会提示查找不到对象的错误
#include <bb/cascades/ListView>
ListView *mylistview = root->findChild<ListView*>("ContentList");
引入后,我们设置准备要填充的值
QListDataModel<QString> *listDataModel =new QListDataModel<QString>();
listDataModel->append(newLine);
最后我们将值填充入ListView中
mylistview->setDataModel(listDataModel);
本文详细介绍了如何在QML环境中动态修改组件属性,包括使用`root->findChild`方法查找组件并修改其属性。通过示例展示了如何在代码中操作Label组件和ListView,并填充数据模型。
1574

被折叠的 条评论
为什么被折叠?



