8

混合UIテクノロジ(主にC ++といくつかのQMLコンポーネントが含まれています)を使用してアプリケーションを構築しています。

QDeclarativeView次のようなusing構文内に表示したいQMLアイテムがあるとします。

view = new QDeclarativeView(QUrl::fromLocalFile("foobar.qml"));

Qt Creatorのプロジェクトにfoobar.qmlを追加しました。これにより、次の行が.proファイルに自動的に追加されます。

OTHER_FILES += \
    foobar.qml

これで、ファイルをプロジェクトに含めると、ビルドフォルダーにコピーする必要があることを意味しますが、そうではありません。アプリケーションを実行すると、ビルドフォルダーにfoobar.qmlがないというエラーが発生します。QMLソースをコピーするためだけにカスタムビルドステップを追加したくないので、これを行うための「事実上の」方法はありますか?

4

2 に答える 2

7

明らかな解決策の1つは、Qtのリソースシステムを介してQMLソースを含めることです。これは、 QMLベースのアプリケーションのデプロイに関するドキュメントページでヒントになっています。

編集:これが完全な解決策です。私はRTFMを学ぶ必要があります。

于 2010-10-11T12:03:16.553 に答える
3

シャドウビルドを使用していますか?その場合、アプリケーションはソースコードと並行するディレクトリにビルドされます。テストのために、Qt Creatorで作業ディレクトリを変更できます(左側のバーのプロジェクト、次にビルドターゲットの実行)。リソースの使用は絶対確実に思えますが、リソースを変更するたびに再構築する必要があります。

于 2011-01-27T23:14:30.153 に答える