1

私はC ++の初心者で、変な質問をして申し訳ありません。QT でやるべき学習タスクがあり、開始する際にいくつかの問題があります。

txt からいくつかのデータを抽出し、それらを QT のデータベース/モデルに入れ、QML インターフェイスで編集できるようにする必要があります。

抽出するデータの例 (3 つの例):

名前: NAV.brake.radius
値: 7
説明: ナビ ブレーキ サークル半径 [m]

名前: NAV.slowdown.radius
値: 20
説明: ナビ減速円半径 [m]

名前: CTRL.use.acc
値: はい
説明: CTRL は加速度計を使用します


私の主な問題は、抽出のデータをどこに保存すればよいですか?

「名前」を QString に、値を QVAriant に、説明を QString に格納し、それらをすべてクラス「データ」に格納し、データを何らかの方法で AbstractItemModel に格納する必要がありますか? または QStandardItemModel を使用しますか?

仕事へのエントリーを見つけるのに本当に問題があります。データを Modle に保存または接続する方法のヒントをお持ちの方はいますか?

ベストウィッシュガリ

4

1 に答える 1

0

AbstractItemModel は、データを格納する「抽象的」な方法を提供します。実装された data(...) 関数呼び出しを介してアクセスできることを除いて、データを維持するための基礎となるデータ構造に対する要件はありません。基本的に、これは、データをある種のインデックス付きコンテナーとして視覚化する必要があることを意味します。

あなたの質問を理解できれば、複数のデータ ポイントを持つノードがあります。ノードを C++ 構造体としてモデル化し、ItemModel 実装をこの構造体へのインデックスのマップに保持することをお勧めします。そこから、 data(...) 関数を実装して、適切なインデックスでこのマップのエントリを取得します。

于 2013-06-09T13:59:44.930 に答える