2017-03-11 121 views
1

任何人都可以说一步一步的方法将已经创建的插件合并到一个新的基于QML的程序中。
我有了这个插件,从混帐qmltermwidget称为qmltermwidget github
现在我已经编译它,我可以测试它的例子程序,但我不知道如何使用Qt/QML
如何使用QML插件

我的自定义应用程序中使用
+0

该插件需要位于插件路径列表中(请参阅'QQmlEngine :: addPluginPath'),您只需导入并使用它。 – dtech

+0

你能举个例子吗? – dravigon

回答

2

请参阅“Creating C++ Plugins for QML”。
在你的情况,你已经有一个插件(从previous question),但步骤包括:

QML扩展插件适用于特定于应用程序或类似库的插件。
库插件应该限制自己注册类型,因为对引擎的根上下文的任何操作都可能导致库用户代码中的冲突或其他问题。

Module Definition qmldir Files”是您声明模块可用插件的地方。

plugin <Name> [<Path>] 
  • <Name>是插件库的名称。这通常与平台相关的插件二进制文件的名称不同;例如库MyAppTypes将在Linux上生成libMyAppTypes.so,在Windows上生成MyAppTypes.dll
  • <Path>(可选)指定任一:
    • 的绝对路径包含插件文件的目录中,或
    • 从包含qmldir文件到包含插件文件的目录中的目录的相对路径。

默认情况下,在包含qmldir文件的目录中的插件库的引擎搜索。
可以使用QQmlEngine::pluginPathList()查询插件搜索路径,并使用进行修改。

+0

再次我没有得到它我已经编译插件在我的主程序路径说/ QMLTermWidget我应该如何将它添加到我的主程序 – dravigon

+0

我已经添加插件文件夹到qrc像[这个问题](http: //stackoverflow.com/questions/31726321/load-qmldir-from-qrc-file?noredirect=1&lq=1)但建议的答案不起作用 – dravigon

+0

它突然开始工作:-) – dravigon