qml全局变量定义建议

从C++导入到qml的全局变量和qml定义变量或许有些混淆,使用下列建议或许可以解决全局变量混淆的问题。

  定义qml变量相当于定义JavaScript变量。JavaScript变量命名必须以字母,_$为开头。其他字符可以是字母,_$,数字

建议

  全局变量或外部变量可以使用$修饰变量。

例子

  • 设置导入$message变量到qml中:
...
engine.rootContext()->setContextProperty("$message", "hello world!");
...
  • qml使用:
...
Component.onCompleted: console.log($message)
...
  • 另外qml的全局变量(外部变量)也可以这样定义:
/* BaseItem.qml */
Item {
    property variant $message: "hello world!" 
    ...
}

  引用BaseItem.qml的全局变量(外部变量)$message

BaseItem {
    ...
    Component.onCompleted: console.log($message)	
    ...
}
发布了354 篇原创文章 · 获赞 80 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/nicai_xiaoqinxi/article/details/103749837