Red de conocimiento informático - Material del sitio web - Cómo usar qml como interfaz y C++ para implementar lógica de negocios

Cómo usar qml como interfaz y C++ para implementar lógica de negocios

Aprendí en Yuanbiao que primero se usa QML para crear páginas, y si C++ implementa lógica, entonces debe haber una clase C++ registrada como tipo QML. Por ejemplo, si desea mostrar una columna de datos, utilice ListView para QML, y el modelo de Listview, la fuente de los datos, puede ser un tipo registrado en Qml en C++, como QStringList, QList, QAbstractItemModel, etc. (Puede encontrarlo en la sección Uso de C++ del documento. Se encuentra en Modelos con vistas rápidas de Qt). Yendo más allá, muchos tipos de QML se implementan en C++, por lo que el código escrito en QML se puede implementar completamente en C++, pero QML se encapsula y se le entrega a usted para su uso, como el tipo QML FolderListModel, si realmente conoce el C++ de Qt. , puede encapsular un modelo usted mismo para implementar las funciones de FolderListModel, que pueden ser más fáciles de usar.

El ejemplo de Qt Escribir extensiones QML con C++ puede ayudar a resolver el problema. Compréndelo tú mismo.

Necesitas conocer este método qmlRegisterType, compruébalo tú mismo en la documentación.

Implementar lógica de negocios en C++ requiere que comprendas las clases relacionadas con tu lógica en Qt o C++. Por ejemplo, para operaciones con archivos, debe utilizar QFile, etc.

De hecho, parte de la lógica empresarial se puede escribir directamente en QML utilizando JS. Por ejemplo, ¿qué evento onClicked?