上一節介紹了純qml的外掛程式擴充套件方式,這種擴充套件方式基本滿足大部分的擴充套件需求,下面開始介紹比較小眾的基於c++的擴充套件
1.更新myplugin工程下的qmldir檔案,加入plugin myplugin, 其中myplugin是外掛程式的動態庫名稱,在windows下對應myplugin.dll,在linux下多月myplugin.so
2.編譯myplugin外掛程式,生成myplugin.dll,這裡工程沒有copy配置,所以預設dll不會拷貝到e:/t/qmlplugin/qmlplugintest/,需手動拷貝,
(二)生成外掛程式描述檔案qmltypes
3.呼叫qmlplugindump生成描述檔案:
qmlplugindump myplugin 1.0 e:\t\qmlplugin\qmlplugintest > e:\t\qmlplugin\qmlplugintest\myplugin\plugin.qmltypes
會自動生成描述檔案:
import qtquick.tooling 1.14. 再次開啟myplugin工程的,加上這句:typeinfo plugin.qmltypes// this file describes the plugin-supplied types contained in the library.
// it is used for qml tooling purposes only.
// // this file was auto-generated by:
// 'qmlplugindump myplugin 1.0 e:\t\qmlplugin\qmlplugintest'
module
}
1.如果想自己寫c++擴充套件,可以將qtquick.controls 源**研究研究
2. 該節示例**:
1. qmlplugindump會區分release和debug,建議直接編譯release
2. 如果外掛程式應用了除qt之外的dll(建議不要這麼引用),需要將dll跟qmlplugindump放同乙個目錄
3. 如果使用了c++編寫的dll外掛程式方式, module的名稱不能與exe內部註冊的mudule重複
QML外掛程式擴充套件(一)
準備分兩節來介紹qml擴充套件外掛程式,分別為 一 基於qml檔案的擴充套件方式 二 基於c 的外掛程式擴充套件 這篇先介紹基於qml的外掛程式擴充套件。qmldir 用於組織自定義的qml外掛程式,qmldir的具體寫法可參考 qmltypes qml外掛程式的解釋檔案,用於qtcreator語法...
QML外掛程式擴充套件(一)
準備分兩節來介紹qml擴充套件外掛程式,分別為 一 基於qml檔案的擴充套件方式 二 基於c 的外掛程式擴充套件 這篇先介紹基於qml的外掛程式擴充套件。qmldir 用於組織自定義的qml外掛程式,qmldir的具體寫法可參考 qmltypes qml外掛程式的解釋檔案,用於qtcreator語法...
QML外掛程式擴充套件(一)
qml外掛程式擴充套件 一 準備分兩節來介紹qml擴充套件外掛程式,分別為 一 基於qml檔案的擴充套件方式 二 基於c 的外掛程式擴充套件 這篇先介紹基於qml的外掛程式擴充套件。qmltypes qml外掛程式的解釋檔案,用於qtcreator語法高亮。可通過qt提供的工具qmlplugindu...