目录
基本概念
ECMA-Script ES5
1. ECMA-Script ES5适用于编写QML应用程序。
2. 这个与在浏览器里面额JavaScript不同。
3. 没有提供DOM相关的API
4. ES5提供了对内访问类型,如Object,Array,Math
QML全局对象
1. 默认的全局对象,在任意一个qml文件都可以使用。
2. Qt对象,可以使用Qt.quit()
3. 如果要打印,可以使用print()方法
4. console对象统一提供打印
5. Translation提供了一些方法,如qsTr(),qsTranslate(),qsTrld()
6.XMLHttpRequest对象提供了抓取http数据包的功能
在QML中通过
import "utilities1.js" as Utilities1
可以在QML文件中导入JS文件
在Js文件中,可以通过Qt.include("utilities2.js"),导入其他的JavaScript文件,从而实现间接调用
代码与实例
给出几个例子,QML文件包含了utilities1.js。utilities1.js包含了utilities2.js
如何用QML去调用utilities1.js里面的函数,以及直接调用utilities2.js里面的函数
程序运行截图如下:
代码如下:
import QtQuick 2.9
import QtQuick.Window 2.2
import "utilities1.js" as Utilities1
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
Rectangle{
width: 300
height: 100
color: "yellowgreen"
anchors.centerIn: parent
Text {
text: qsTr("hehe da")
anchors.centerIn: parent
}
MouseArea{
anchors.fill: parent
onClicked: {
console.log("12345")
Utilities1.greeting()
Utilities1.printUtilities2()
Utilities1.printValue("ma", "maipi")
}
}
}
}