Я не могу заставить qml использовать мой пользовательский плагин - PullRequest
2 голосов
/ 26 мая 2011

Я работаю в QtQuick и сейчас борюсь со странной проблемой: я не могу заставить свой собственный плагин работать в Qml.В SDK есть простая демонстрация (Примеры / 4.7 / декларативное / учебное пособие / расширение / chapter6-plugins), и она не работает на моем компьютере.Я не получаю никаких сообщений об ошибках, за исключением того, что он не распознает мои пользовательские элементы.Кто-нибудь видел эту проблему?Любые предложения?

Мои настройки: Win 7 Home Premium, Qt Creator 2.1.0, Qt 4.7.3 (MinGW 4.4)

Спасибо

Ответы [ 3 ]

2 голосов
/ 27 мая 2011

Помимо проблемы qmldir, уже упомянутой blakharaz, также убедитесь, что в файле pro установлен QML_IMPORT_PATH или задан путь через QDeclarativeEngine :: addImportPath (), чтобы модуль можно было найти в среде разработки (если вы не устанавливаете их общесистемный перед использованием).

А при использовании подпапок убедитесь, что они являются частью импорта (см. http://doc.qt.nokia.com/4.7-snapshot/qdeclarativemodules.html)

0 голосов
/ 02 декабря 2011

У меня точно такая же проблема.Создайте свои .dll как релиз вместо отладки, это исправило это для меня.

0 голосов
/ 27 мая 2011

Было бы неплохо иметь некоторый код.Одной из возможных проблем может быть структура каталогов или файл qmldir.Если вы хотите иметь плагин с именем Foo, вам в основном нужен каталог Foo, который содержит файл Foo.dll (или libFoo.so) и файл qmldir (содержимое по крайней мере «плагин Foo»). Если у вас есть этот «import Foo 1.0»должен загрузить библиотеку.

...