QML中的全局對象包含了所有JavaScript全局對象 的屬性,以及Qt對象、XMLHttpRequest對象、離線存儲接口和記錄輸出函數(console.log()和console.debug())。對於XMLHttpRequest和離線存儲接口的介紹,可以在Qt幫助中參考本節對應的QML Global Object文檔。
QML全局Qt對象提供了Qt中非常有用的枚舉變量和函數。Qt對象不是一個QML元素,它不能被實例化。如果要使用它,可以直接調用全局Qt對象的函數。
import QtQuick 1.0
Text{
color: Qt.rgba(1,0,0,1)
text: Qt.md5("hello, word")
}
在Qt幫助中查看QML Qt Element關鍵字來查看全局Qt對象中所有的函數。
1. 枚舉變量
Qt對象包含了在Qt的元對象系統中聲明的枚舉變量。例如,可以使用Qt.LeftButton來訪問Qt::MouseButton枚舉變量中的LeftButton成員。
2. 類型
Qt對象也包含了輔助函數用於創建指定數據類型的對象。這主要應用在當設置項目的屬性而該屬性中包含了下面的類型時:
a) color:使用Qt.rgba()、Qt.hsla()、Qt.darker()、Qt.lighter()、Qt.tint();
b) rect:使用Qt.rect();
c) point:使用Qt.size();
d) vector3d:使用Qt.vector3d()
3. 日期/時間格式化
Qt對象包含了一些函數用來格式化QDateTime、QDate和QTime的值
a) string Qt.formatDateTime(datetime date, variant format)
b) string Qt.formatDate(datetime date, variant format)
c) string Qt.formatTime(datetime date, variant orma)
這裏格式使用dd.MM.yyyy.hh:mm:ss.zzz等形式來表示。可查看QML Qt Element關鍵字對應的文檔中進行查看。
4. 動態對象創建
全局對象中提供了函數來允許從文件或字符串動態創建QML項目:
object Qt.createComponent(url)
object Qt.createQmlObject(string qml, object parent, string filepath)