2017-03-11 14 views
1

ステップバイステップの方法で、すでに作成されたプラグインを新しいQMLベースのプログラムに組み込むことができます。
私はそれをコンパイルしていると私はそれでサンプルプログラムをテストすることができますqmltermwidget github
私はgitのからqmltermwidgetと呼ばれるこのプラグインを持っているが、私は
QMLプラグインの使い方

のQt/QMLを使って自分のカスタムアプリケーションでそれを使用する方法がわかりません
+0

プラグインは、プラグインのパスのリストにある必要があります( 'QQmlEngine :: addPluginPath'を参照)。それをインポートして使用するだけです。 – dtech

+0

あなたは例を挙げることができますか? – dravigon

答えて

2

Creating C++ Plugins for QML」を参照してください。あなたのケースで
は、すでに(あなたprevious questionから)プラグインを持っていますが、手順は関与:

  • qmldir fileを記述するために作成したプラグイン
  • のためのプラグインをプロジェクトファイルを書く

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

関連する問題