Название: Проблема с передачей типа из С++ в QML Отправлено: spirits25 от Октябрь 10, 2012, 12:49 Всем доброго времени.
Пользуюсь библиотеками Qt5. Создаю класс, наследованный от QDeclarativeItem. Получаю 2 файла navigatebutton.h и navigatebutton.cpp. navigatebutton.h: Код: #ifndef NAVIGATEBUTTON_H и navigatebutton.cpp Код: #include "navigatebutton.h" В main.cpp подключаю qml и регистрирую предыдущий класс Код: #include <QtGui/QGuiApplication> в итоге внутри qml файла автодополнение видит тип NavigateButton, но при попытке запуска выдаёт Цитировать Module 'Qt3D' does not contain a module identifier directive - it cannot be protected from external registrations. qrc:/qml/new_project/main.qml:3:1: module "org.test" is not installed Программа неожиданно завершилась. Вот и вопрос, почему?=) Название: Re: Проблема с передачей типа из С++ в QML Отправлено: spirits25 от Октябрь 10, 2012, 13:32 кроме того в стандартном примере "qt5/qtquick1/examples/declarative/cppextensions/referenceexamples/valuesource"
выполняю Цитировать qt5/qtbase/bin/qmake на что получаюmake qmlviewer example.qml Цитировать Qml debugging is enabled. Only use this in a safe environment! file:///mnt/d/qt5/qtquick1/examples/declarative/cppextensions/referenceexamples/valuesource/example.qml:41:1: module "People" is not installed import People 1.0 ^ может дело в текущей версии библиотек qt5? нужно просто подождать? или у меня ошибка? Название: Re: Проблема с передачей типа из С++ в QML Отправлено: yoyo от Ноябрь 08, 2012, 15:00 По поводу второго, могу сказать, что при запуске qml файла через qmlviewer найти класс People система не сможет, т.к. он нигде не зарегистрирован. Он регистрируется в main.cpp через qmlRegisterType<Person>. Для работы примера необходимо запускать исполняемый файл, созданный через qmake && make.
|