問題タブ [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.
qt - Object::property ( const char * name ) 空の QVariant を返す const
私のクラスには enum プロパティがあります。 を使用してこのプロパティにアクセスしたいと思いますQObject*
。呼び出し時のQVariant QObject::property ( const char * name ) const
戻り値がQVariant
列挙型の空です。
次のコードを検討してください。
プロパティが空の QVariant 値を返すのはなぜですか? 文字列ラッパー プロパティは正常に機能します。
c++ - QBrush の色をアニメーション化する方法
の色をアニメートしたいQBrush
。詳細については、以下のコードを参照してください
それが私の.hファイルです
それは私の .cpp ファイルです
それがアニメーションです:
しかし、うまくいかず、何も起こらず、ブラシの色は以前と同じです。修正するにはどうすればよいですか?
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 で立ち往生しているため、ソースの編集を伴わない回避策を考え出そうとしています。
qt - QML マップ バインディング v2
私は Qt の完全な初心者なので、私の質問はばかげているように聞こえるかもしれませんが、本当に助けが必要です。私はC++を少し知っています。それだけです。
したがって、私の仕事は、INI に似た (形式はあまり重要ではありません) ファイルを読み取る C++ プログラムを作成することです。
明確にするために、このファイルで定義されるプロパティはわかりません。名前またはタイプは、コンパイル時に不明です。
そのプログラムがQMLファイルをロードした後(私はこれを行うことができます)、ロードされたファイルデータを(これを行う方法がわからない)、たとえば「設定」という名前のJavaScriptオブジェクトとして挿入し、QMLプロパティバインディングが次のように使用するようにします
問題は、読み取りデータを JavaScript オブジェクトとして QML に挿入して、QML プロパティ バインディングがそれを使用できるようにするにはどうすればよいかということです。