問題タブ [qproperty]

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.

0 投票する
2 に答える
632 参照

qt - Object::property ( const char * name ) 空の QVariant を返す const

私のクラスには enum プロパティがあります。 を使用してこのプロパティにアクセスしたいと思いますQObject*。呼び出し時のQVariant QObject::property ( const char * name ) const戻り値がQVariant列挙型の空です。

次のコードを検討してください。

プロパティが空の QVariant 値を返すのはなぜですか? 文字列ラッパー プロパティは正常に機能します。

0 投票する
2 に答える
1684 参照

c++ - QBrush の色をアニメーション化する方法

の色をアニメートしたいQBrush。詳細については、以下のコードを参照してください

それが私の.hファイルです

それは私の .cpp ファイルです

それがアニメーションです:

しかし、うまくいかず、何も起こらず、ブラシの色は以前と同じです。修正するにはどうすればよいですか?

0 投票する
0 に答える
266 参照

qt - 継承を無視するQDataWidgetMapper

QDataWidgetMapper を使用して一連のウィジェットに表示されているモデルがあります。そのようなフィールドの 1 つは、オプションの QStringList によって設定された QComboBox ですが、マッピングが機能していないようです。

QComboBox のユーザー プロパティは currentText() 関数であり、対応する書き込み用の setCurrentText() 関数がないため、マッピングは警告で失敗しますWarning: QComboBox::setProperty: Property "currentText" invalid, read-only or does not exist

したがって、次のような単純なカスタム QComboBox を作成しました。

しかし、それでも同じマッピング エラーが発生しますWarning: QComboBox::setProperty: Property "currentText" invalid, read-only or does not exist。ウィジェットを MappingComboBoxes に昇格させたことは確かですが、QDataWidgetMappercurrentTextは、書き込み可能なカスタム ユーザー プロパティではなく、デフォルトの読み取り専用ユーザー プロパティを使用しているようですmappingText

何か不足していますか?継承されたクラスのユーザー プロパティをオーバーライドできませんか?

編集: この問題は Qt 5.3.1 で修正されていることを認識していますが、当面は Qt 4 で立ち往生しているため、ソースの編集を伴わない回避策を考え出そうとしています。

0 投票する
1 に答える
234 参照

qt - QML マップ バインディング v2

私は Qt の完全な初心者なので、私の質問はばかげているように聞こえるかもしれませんが、本当に助けが必要です。私はC++を少し知っています。それだけです。

したがって、私の仕事は、INI に似た (形式はあまり重要ではありません) ファイルを読み取る C++ プログラムを作成することです。

明確にするために、このファイルで定義されるプロパティはわかりません。名前またはタイプは、コンパイル時に不明です。

そのプログラムがQMLファイルをロードした後(私はこれを行うことができます)、ロードされたファイルデータを(これを行う方法がわからない)、たとえば「設定」という名前のJavaScriptオブジェクトとして挿入し、QMLプロパティバインディングが次のように使用するようにします

問題は、読み取りデータを JavaScript オブジェクトとして QML に挿入して、QML プロパティ バインディングがそれを使用できるようにするにはどうすればよいかということです。