問題タブ [qtdeclarative]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
deployment - QML アプリケーションの展開、リソース システムまたは相対アドレス指定
QML ベースのアプリケーションをデプロイします。今、.qml ファイルとそれに関連するファイルにリソース システムを使用するか、相対アドレス指定を使用する方が良いのではないかと考えています。それとももっと良い方法がありますか?
最初の方法では、qml ファイルと画像の数がどんどん大きくなると、プロジェクトの管理が難しくなる可能性があります。また、Qt デスクトップ コンポーネントのようなサード パーティのプラグインを展開するのは難しいと思います。
そして、2 番目の方法は安全ではありません。誰もがテキスト エディターを開いて、.qml ファイルを編集できます。
より良い方法はありますか?
python - PySide:QMLからPythonにデータを渡す
QMLからPythonにデータを送信しようとしていますが、エラーが発生します。
test.py:
test.qml:
ボタンがクリックされると、「テスト」が出力されると思っていましたが、代わりに次のエラーが発生します。
TypeError:printText()は正確に2つの引数を取ります(1つ指定)
私は何が欠けていますか?
編集:例をより単純なものに変更しました。
qt - QMLにはlibQtDeclarativeが必要ですか?
QML に libQtDeclarative.a が必要かどうかはわかりません。それは...ですか?そうでない場合、それは正確には何のためですか?
opengl - Qt Quick クロス プラットフォーム アプリケーションの OpenGL
クロス プラットフォーム (または少なくともデスクトップ + 組み込みハードウェア) アプリケーションを開発しようとしています。Qt Quick を使用してタッチ フレンドリーな GUI を作成したいと考えています。データを表示する QGLWidget を使用して、従来のアプリケーションを実装しました。ウィンドウの一部のみが OpenGL であることが重要です。このため、EGLFS と LinuxFB には問題があります。X11 (または Wayland) のみがアプリケーションを適切に表示できます (他のものは setParent 関数が欠落しているというエラーをいくつか生成し、画面全体が黒くなります)。今、私は QML で同じことを達成しようとしています。QML アプリケーションの一部としてこの OpenGL レンダラーを使用し、その周りにいくつかの Qt Quick ウィジェットを使用したいと考えています。何人かが同じことを尋ねているのを見つけましたが、答えは常に QDeclarativeItem をサブクラス化し、ペインターを呼び出すことです。■ beginNativePainting() (他の人は QDeclarativeItem を介してエクスポートすると言っていますが、これを行う方法がわかりません)。問題は、デスクトップでは Qt 5.11 のネイティブ ペインタが OpenGL ではないことです。QT5 では、OpenGL グラフィック システムを強制する方法はありません。したがって、OpenGL コンテキスト (QGLContext::currentContext()) を取得しようとすると、常に NULL になります。別の問題: ウィジェットを qmlRegisterType("Test", 1, 0, "Test"); でエクスポートすると、QDeclarativeView を使用した場合にのみ表示されますが、Qt Quick は表示されません。QQuickView を使用すると、モジュール「Test」がインストールされていないと表示されます。どうすればこれを適切に実装できますか? したがって、OpenGL コンテキスト (QGLContext::currentContext()) を取得しようとすると、常に NULL になります。別の問題: ウィジェットを qmlRegisterType("Test", 1, 0, "Test"); でエクスポートすると、QDeclarativeView を使用した場合にのみ表示されますが、Qt Quick は表示されません。QQuickView を使用すると、モジュール「Test」がインストールされていないと表示されます。どうすればこれを適切に実装できますか? したがって、OpenGL コンテキスト (QGLContext::currentContext()) を取得しようとすると、常に NULL になります。別の問題: ウィジェットを qmlRegisterType("Test", 1, 0, "Test"); でエクスポートすると、QDeclarativeView を使用した場合にのみ表示されますが、Qt Quick は表示されません。QQuickView を使用すると、モジュール「Test」がインストールされていないと表示されます。どうすればこれを適切に実装できますか?
delegates - デリゲート内にわずかな違いがある 2 つの同一の ListView
2 つのほぼ同一の qml ファイルがあります。そのうちの 1 つをここにリストします。他の 1 つの違いはコメント行で示されています。
これら 2 つのコンポーネントは、デリゲートの外観がわずかに異なるだけで、見た目が似ているリスト ビューを意図しています。これらの 2 つのファイルを 1 つにマージして、このように使用できるようにするにはどうすればよいですか?
c++ - Qml のアニメーション
コードでゆっくりと色を変えようとしていますが、プログラムが 1.5 秒待ってからすぐに色が変わります。私の開発環境は Windows 8 です。これを修正するにはどうすればよいですか? これが私のコードです:
qt - 静的ビルドの Qml
この問題について多くのトピックを見てきましたが、実際に私の問題を解決できるものはありません。新しい Qt Quick アプリケーションを作成するとQtQuick 2.4
、次のエラーが表示されます。
プロジェクト エラー: QT の不明なモジュール: クイック qml
私がインポートした場合QtQuick 1.1
:
プロジェクト エラー: QT の不明なモジュール: 宣言型
Qt 5.4 を使用して静的ライブラリで Qt Quick アプリケーションを作成する方法はありますか?
qt - Qt Quick Controls アプリケーションを起動できません
Qt 5.4 をダウンロードし、Qt Quick Controls 1.3 で Qt Quick アプリケーションを作成しました。
コードは何も変更せず、(リリースとして) ビルドしただけです。次に、.exe を別のフォルダーにコピーし、.dll
必要なすべてのファイルを追加しました。プログラムを起動すると、ウィンドウはなく、タスク マネージャーでプログラム プロセスが実行されているだけでした。
ただし、QtQuick 1.1 を使用するプログラムは起動できます。
どうすれば修正できますか?
ありがとう。
もう少し説明するための画像を次に示します。