2017-03-11 54 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