Na ovoj stranici

Korištenje QML modula s dodatcima

QML moduli mogu koristiti C++ dodatke kako bi komponente definirane u C++-u učinili dostupnima aplikacijama za Qt Quick.

Za izradu QML modula:

  1. .qml Stvorite prilagođene komponente i smjestite sve QML datoteke u direktorij namijenjen vašem modulu. Na primjer, imports\asset_imports.
  2. Za projekte Qt Quick UI Prototype (.qmlproject), navedite putanju do direktorija koji sadrži modul u datoteci .qmlproject aplikacije u kojoj želite koristiti modul kao vrijednost varijable importPaths. Na primjer, importPaths: [ "imports", "asset_imports" ].
  3. Kreirajte datoteku qmldir za svoj modul i smjestite je u direktorij modula. Za više informacija pogledajte Module Definition qmldir Files.
  4. Kreirajte direktorij naziva designer u direktoriju vašeg modula.
  5. Stvorite .metainfo datoteku za svoj modul i smjestite je u direktorij designer. Kao primjer upotrijebite metainfo datoteku isporučenu s Qt-om, poput qtquickcontrols2.metainfo.
  6. Uvezite modul u projekt, prema uputama u odjeljku Uvođenje QML modula.

Napomena: Ako Qt Creator ne može pronaći novi QML modul, izgradite projekt, a zatim idite na Tools > QML/JS > Reset Code Model kako biste ponovno pokrenuli model koda.

Razvoj s Qt 6.1 ili ranijim

Od Qt 6.2 CMake automatski generira datoteke qmltypes i qmldir.

Generiranje datoteka s opisom tipova

Prilikom registriranja QML tipova, provjerite ima li QML modul datoteku plugins.qmltypes. Idealno bi bilo da se nalazi u istom direktoriju kao i datoteka qmldir. Datoteka qmltypes sadrži opis komponenti koje izvoze plugini modula i Qt Creator je učitava prilikom uvoza modula.

Za više informacija pogledajte Datoteke opisa tipova.

Automatsko dumpanje dodataka

Ako modulu s plug-inovima nedostaje datoteka qmltypes, Qt Creator pokušava samostalno generirati privremenu datoteku pokretanjem programa qmldump u pozadini. Međutim, ovo automatsko dumpanje je mehanizam za rezervnu situaciju s mnogo točaka u kojima može doći do pogreške i ne možete se na njega oslanjati.

Uvoz QML modula

Po zadanome, Qt Creator će pretraživati QML putanju uvoza Qt-a za QML module.

Ako koristite qmake i vaša aplikacija dodaje dodatne putanje uvoza koje bi Qt Creator trebao koristiti, navedite ih pomoću QML_IMPORT_PATH u datoteci .pro vaše aplikacije: QML_IMPORT_PATH += path/to/module.

Ako koristite CMake, dodajte sljedeću naredbu u datotek CMakeLists.txt kako biste postavili putanju za uvoz QML-a:

set(QML_IMPORT_PATH ${CMAKE_SOURCE_DIR}/qml ${CMAKE_BINARY_DIR}/imports CACHE STRING "" FORCE)

Staza za uvoz utječe na sve ciljeve koje gradi CMake projekt.

Pokretanje QML modula u načinu dizajna

QML Puppet se u načinu Design koristi za iscrtavanje i pregled slika te za prikupljanje podataka. Kako bi se prilagođene komponente mogle ispravno iscrtati iz QML modula, QML Puppet mora biti izgrađen s istom verzijom Qt-a i istim kompajlerom kao i QML moduli.

Vrhunac bi se trebao ponašati drugačije ovisno o tome pokreće li ga QML Puppet ili aplikacija. Na primjer, animacije se ne bi smjele pokretati u načinu izrade ( Design ). Možete koristiti vrijednost okoline QML_PUPPET_MODE kako biste provjerili pokreće li aplikacija trenutno vrhunac ili se on uređuje u načinu uređivanja ( Design ).

Vidi također Resetiranje modela koda.

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.