QML中ListView使用cpp的Model
前言
我在实际转QML开发时,遇到一个百思不得其解的问题–>ListView的Model是来自C++,其中delegate中的有些显示数据,查不到引用,找了很久都不知道来自哪里?直到我看到博主「猫生鱼」的原创文章,注释里写明了来源,设置好对应的roleNames()后,ListView就可以在delegate中就可以直接使用title_、content_、select_来获取数据了。
代码如下:
/** ListView获取数据时,需要的别名
* @brief MyListViewModel::roleNames
* @return
*/
QHash<int, QByteArray> MyListViewModel::roleNames() const
{
// 这样设置好后,ListView就可以在delegate中,
// 直接使用title_、content_、select_来获取数据了。
QHash<int, QByteArray> roles;
roles[TitleRole] = "title_";
roles[ContentRole] = "content_";
roles[SelectRole] = "select_";
return roles;
}
————————————————
版权声明:本文为CSDN博主「猫生鱼」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_23604781/article/details/121563087
请特别注意一下注释内容,感谢博主的「猫生鱼」详文,文章来自https://blog.csdn.net/qq_23604781/article/details/121563087。如有侵权请联系删除,谢谢。