QString QSqlTableModel::getColumnName(int col) のようなものが欲しいです。
7321 次
2 に答える
5
QSqlTableModelでは、次のように列名のエイリアスを設定できます。
model->setHeaderData(0, Qt::Horizontal, QObject::tr("ID"));
model->setHeaderData(1, Qt::Horizontal, QObject::tr("First name"));
model->setHeaderData(2, Qt::Horizontal, QObject::tr("Last name"));
したがって、同様に、QSqlTableModelからそのような列名エイリアスを取得できます。
QString columnName1 = model->headerData(0, Qt::Horizontal, Qt::DisplayRole).toString();
QString columnName2 = model->headerData(1, Qt::Horizontal, Qt::DisplayRole).toString();
QString columnName3 = model->headerData(2, Qt::Horizontal, Qt::DisplayRole).toString();
デフォルトでは、エイリアスを設定しない場合、列名はモデルの初期化時にテーブルメタデータから読み取られたものと同じになります。セクションインデックスが有効な列インデックスであることを確認してください。列には水平方向、行には垂直方向を指定してください。
お役に立てれば。
于 2011-01-04T18:00:57.877 に答える