QML中的JS文件中的模型(Models in JS file in QML)

编程入门 行业动态 更新时间:2024-10-27 00:23:25
QML中的JS文件中的模型(Models in JS file in QML)

我可以将我的Models对象放在JS文件中,然后像共享模型一样重用吗? 它应该如下所示:

//Models.JS var myModel = ListModel {}

Can I put my Models-objects in JS file, and then reuse like a shared model? It should look like this:

//Models.JS var myModel = ListModel {}

最满意答案

不,你不能在JS中使用QML类型(我假设它是Qt 4.x)。 如果通过“重用”表示共享(如全局变量),则可以将模型作为上下文属性放在全局上下文中。 请参阅QDeclarativeContext :: setContextProperty() 。 另一种选择是创建C ++模型,其中所有实例将共享相同的状态。

如果您不想拥有单个全局实例,则可以在根元素中声明ListModel { id: myModel } ,并从子级访问它(甚至在其他文件中声明)。

Item { ListModel { id: myModel } Listview { id: one model: myModel } Listview { id: two model: myModel } // etc }

No, you cannot use QML types in JS (I assume it is Qt 4.x). If by "reuse" you mean share (like in global variable), you can put your model in global context as a context property. See QDeclarativeContext::setContextProperty(). Another option would be create C++ model, where all instance would share same state.

If you don't want to have a single global instance, you can declare ListModel { id: myModel }in root element, and access it from children (even declared in other files).

Item { ListModel { id: myModel } Listview { id: one model: myModel } Listview { id: two model: myModel } // etc }

更多推荐

本文发布于:2023-07-30 00:01:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1320806.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:模型   文件   JS   QML   Models

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!