我有两个QML文件。 PageOne.qml和PageTwo.qml。 我想从PageTwo.qml和PageOne.qml中的PageTwo.qml访问PageOne.qml中的元素属性和方法。 我可以通过包含
来访问PageTwo.qml中的PageOne.qmlPageOne{
id: pageOne
}
在PageTwo.qml中。一块蛋糕。
但是如果我添加
PageTwo{
id: pageTwo
}
到PageOne.qml实现我的主要目标我的应用程序无法启动。我没有错。 这样做的正确方法是什么?
答案 0 :(得分:0)
只需将您的逻辑移至js
文件并将其包含在两个qml文件中。
例如,您可以使用以下内容创建MyLogic.js:
.pragma library
function myPrettyComplexFunction(...)
{
...
}
稍后在您的qml文件中,您将包含并使用它:
import "MyLogic.js" as MyLogic
...
MyLogic.myPrettyComplexFunction(...)
...
答案 1 :(得分:0)
好吧,我在PageTwo.qml
中声明了一个函数PageOne{
id: pageOne
function myfunc(arg){
idOfAnElementInPageTwo.func(arg)
}
然后我从PageOne.qml调用了这个函数,它运行了!所以我需要明确定义在另一个文件中更改/调用方法的方法。