QML其实是对ECMAScript的扩展,融合了Qt object系统,它是一种新的解释性语言,QML引擎虽然由Qt C++实现,但QML对象的运行环境说到底和C++对象的上下文环境是不通的,是平行的两个世界,如果想在QML中访问C++对象,那么必然要找到一种途径在两个运行环境之间建立沟通的桥梁. Qt提供了两种在QML环境中使用C++对象的方式: (1)在C++中实现一个类,注册为QML环境的一个类型,在QML环境中使用该类型创建对象 (2)在C++中构造一个对象,将这个对象设置为QML的上下…